Некорректная работа скриптов

И? В чем вопрос-то?

1 лайк

Добрый день! Прошу прощения, вопрос собственно связан с тем, что представленный простейший файл скрипта (*.scr), некорректно отрабатывает в NanoCAD 26

Данный скрипт приложен для примера, проблема возникает с любыми скриптами, в которых более одной строки.

Если запускать скрипт при помощи команды SCRIPT, то он выполняется без ошибок.

Однако, если запускать nCad 26.0 при помощи ярлыка (или программно запускать процесс), то возникает ошибка:

На ленте некоторые кнопки становятся не доступны (серые):

изображение

Данная проблема отсутствует в nanoCAD 23.1

Скрипт не отрабатывает при использовании в ярлыке запуска “C:\Program Files\Nanosoft\nanoCAD x64 26.0\nCad.exe” -k “C:\TST\1\script.scr”.
В ручном режиме - всё идеально работает. При этом Смущает наличие в командной строке NanoCAD иероглифов:

Разные наны по разному работают с кодировками текста
У скрипта какая?
Комиксы это хорошо, но возможно вложенные файлы было б лучше

Добрый день! Кодировка UTF-8

А скрипт простейший

scripttest.7z (252 байта)

Попробуй ascii

Кодировку я изменил на ascii. Сейчас ситуация ещё интереснее стала: в командной строке при запуске с ялыка с параметром: “C:\Program Files\Nanosoft\nanoCAD x64 23.1\nCad.exe” -k “C:\Users\Aleksandr.Troitskii\Desktop\scripttest.scr” ошибка: “Платформа nanoCAD 26.0 26.0.7228.4926, © 2019-2025 ООО «Нанософт разработка»

Приложение запущено в режиме работы “Организация”.
Текущая группа “Default”.
SCRIPT,ПАКЕТ - Сценарий…
SCRIPTED - Редактор скриптов…
Команда: _PLINE
Неправильный ключ или команда. Введите (') для команды или (?) для математического выражения: _PLINE” При этом, если запускать скрипт в NanoCAD, то скрипт отрабатывает корректно. А кодировка если и вляет , то только на наличие иероглифов в командной строке nanoCAD при отображении сохранённого документа

scripttest.7z (240 байтов)

Попробуй обернуть скрипт в лисп

Я бы сделал несколько шагов:

  1. Каждую команду все же предварять “_.”
  2. Каждую команду / опцию с новой строки
  3. Использовать английские слова для опций (вместо “з” - “_close”)
  4. Контроль дополнительных пробелов в конце строки
  5. Добавить паузу после “_new”

Ну или реально перейти на лисп и попытаться сделать то же самое в нем.

1 лайк

Спасибо за рекомендации. Сейчас более точно обрисую задачу:

  1. У нас в стороннем САПР (AVEVA Isodraft) генерируются изометрички (по сути это dwg/dxf). Понятное дело их сотни. После генерации пользователь в AVEVA нажимает кнопку и в фоновом режиме идет печать в PDF (утилита под AVEVA для генерации iso и экспорта в dwg/dxf). В NanoCAD 23.0/23.1 скрипты использовались только для: открыть - печать в PDF - сохранить - закрыть. Так вот под NanoCAD 26.0 работающая цепочка ломается на скриптах. Я думаю решать через IExtensionApplications

Ну это уже шарпы, там совсем быстро не получится ИМХО.
Неужели в нанокад нет ничего типа “пакетной печати”? Сейчас сижу совсем в другой задаче, виртуаку с наником железо не потянет

Пакетная печать есть. Но пользователю не резон перескакивать из приложения в приложение (нажал кнопку - получил результат). В любом случае - спасибо за уделённое время

1 лайк