Возможности SendStringToExecute()

Автор Тема: Возможности SendStringToExecute()  (Прочитано 6763 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн LisАвтор темы

  • ADN OPEN
  • Сообщений: 27
  • Карма: 1
Возможности SendStringToExecute()
« : 23-08-2022, 07:04:15 »
Всех приветствую.
Хотелось бы немного порасспрашивать знающих об этой интересной функции (дублирую: SendStringToExecute()). Она мне недавно очень помогла, благодаря чему вместо миллиона костылей, статических переменных и так далее мне удалось передать все необходимые строковые переменные по значению уже в CAD-команду. Так вот, после, занимаясь другими задачами, я неоднократно выходил на различные статьи на форумах об этой функции, разные вариации видел. С использованием "._", "*_", "-_" и так далее. Однако информации по этим атрибутам как таковой не находил (только в этих же статьях от авторов/отвечающих, в частности этого форума), потому решил обратиться сюда: может ли кто-нибудь предоставить своего рода шпаргалку, если располагает оной? Мне кажутся достаточно интересными возможности отправлять пути файлов и прочие вещи через атрибуты без использования каких-либо шифрований этих самых путей и последующей дешифровки.

Отмечено как Решение Lis 23-08-2022, 18:15:51

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13880
  • Карма: 1786
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Возможности SendStringToExecute()
« Ответ #1 : 23-08-2022, 14:31:29 »
С использованием "._", "*_", "-_" и так далее.
"." перед именем команды - исходная команда AutoCAD (не переопределенная ни в одном из приложений)
"_" перед именем английской команды AutoCAD или опции команды AutoCAD - работает в любой локализации AutoCAD.
"-" используется вариант команды с командной строкой, а не с диалоговыми окнами (если такой вариант команды есть).
"*" это зацикливание команды с выходом по ESC, но это работает только в меню AutoCAD (насколько я помню).
Мне кажутся достаточно интересными возможности отправлять пути файлов и прочие вещи через атрибуты без использования каких-либо шифрований этих самых путей и последующей дешифровки.
Не понял. О какой шифровке/дешифровке идет речь? Есть необходимость заменить "\\" на "/", так как "\\" воспринимается как пауза в команде AutoCAD. Ну и если в имени файла или в полном пути к файлу есть пробелы, то путь нужно заключить в двойные кавычки.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн LisАвтор темы

  • ADN OPEN
  • Сообщений: 27
  • Карма: 1
Re: Возможности SendStringToExecute()
« Ответ #2 : 23-08-2022, 14:56:10 »
С использованием "._", "*_", "-_" и так далее.
"." перед именем команды - исходная команда AutoCAD (не переопределенная ни в одном из приложений)
"_" перед именем английской команды AutoCAD или опции команды AutoCAD - работает в любой локализации AutoCAD.
"-" используется вариант команды с командной строкой, а не с диалоговыми окнами (если такой вариант команды есть).
"*" это зацикливание команды с выходом по ESC, но это работает только в меню AutoCAD (насколько я помню).
Мне кажутся достаточно интересными возможности отправлять пути файлов и прочие вещи через атрибуты без использования каких-либо шифрований этих самых путей и последующей дешифровки.
Не понял. О какой шифровке/дешифровке идет речь? Есть необходимость заменить "\\" на "/", так как "\\" воспринимается как пауза в команде AutoCAD. Ну и если в имени файла или в полном пути к файлу есть пробелы, то путь нужно заключить в двойные кавычки.
Спасибо Вам. Вы ответили сразу на два вопроса -- и на заданный, и который я не озвучивал, а именно -- как корректно заталкивать путь (ранее извращался немного с этим).
Я же правильно понимаю, что если, допустим, я хочу передать некоторое название файла (а оно также может быть с пробелами), то следует использовать двойные кавычки?

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13880
  • Карма: 1786
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Возможности SendStringToExecute()
« Ответ #3 : 23-08-2022, 17:51:15 »
Я же правильно понимаю, что если, допустим, я хочу передать некоторое название файла (а оно также может быть с пробелами), то следует использовать двойные кавычки?
Да.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение