Сообщество программистов Autodesk в СНГ
ADN Club => AutoCAD .NET API => Тема начата: Doublefish от 24-07-2015, 08:45:31
-
Добрый день
Подскажите пожалуйста, как отличить, что acad.exe запускается пользователем и на экране окно автокада активно или acad.exe запускается пользователем в фоне при печати (публикации)?
-
В основном всё описано в этой статье: http://adndevblog.typepad.com/autocad/2012/08/how-to-detect-when-autocad-is-running-for-a-background-plot.html
В .NET строку запуска можно получить при помощи методов Environment.CommandLine и Environment.GetCommandLineArgs
Я нашёл, что признаком может служить еще опции /print и /Automation в командной строке запуска AutoCAD:
(https://adn-cis.org/forum/proxy.php?request=http%3A%2F%2Fimg-fotki.yandex.ru%2Fget%2F3211%2F7842324.4%2F0_102eb4_78e0a0d1_orig.png&hash=27540960a0c77c3c151010d925ce2c12)
-
А такая картинка будет если запускать _PLOT или _PUBLISH изнутри AutoCAD при BACKGROUNDPLOT отличной от 0:
(https://adn-cis.org/forum/proxy.php?request=http%3A%2F%2Fimg-fotki.yandex.ru%2Fget%2F6516%2F7842324.4%2F0_102eb5_f2edaabd_orig.png&hash=c185383392ef87efe20aecdd8aa23486)
Это запускается второй (дополнительный экземпляр AutoCAD):
(https://adn-cis.org/forum/proxy.php?request=http%3A%2F%2Fimg-fotki.yandex.ru%2Fget%2F15512%2F7842324.4%2F0_102eb6_4157eb42_orig.png&hash=9b73cb09b57b5387eaaf3ac516c5050e)
-
Не проверял, но первое, на что бы посмотрел это значение Application.Visible.
-
Не проверял, но первое, на что бы посмотрел это значение Application.Visible.
Это может быть необходимым, но недостаточным условием для того, чтобы убедиться что AutoCAD запущен для фоновой печати/публикации. Кроме того, любое из приложений, запускаемых вместе с AutoCAD может (!!!) установить Application.Visible в True. Так что не факт...