• Добро пожаловать на Форум пользователей ПО АСКОН. Пожалуйста, авторизуйтесь.
 

Уважаемые пользователи,

Хотим проинформировать вас о режиме работы регистрации на нашем сайте.

Зарегистрироваться возможно в рабочие дни, с 8:00 до 20:00 (мск).

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

Благодарим вас за понимание и сотрудничество. Мы ценим ваше терпение и стремимся предоставить вам лучший опыт использования нашего сервиса.

С уважением,
Команда Ascon

Запуск макроса (форма с утилитами) из компаса

Автор Mary, 29.06.18, 10:26:23

« назад - далее »

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

Mary

29.06.18, 10:26:23 Последнее редактирование: 29.06.18, 11:08:53 от Mary
День добрый!

Макрос написан, через дебагер запускается без ошибок, отрабатывает. Добавляю  в компас (v16) через сервис/настройка интерфейса -> утилиты. И тут уже не все функции отрабатываются. Открыть в проводнике - такой же эффект - форма запустилась, но не все работает

Пример во вложении
кнопка "выбор элемента"  должен быть графический выбор объекта в сборке (ksRequestInfo3D.GetEntityCollection()), и выдача сообщения с названием детали. не запускается совсем.

Файл *.pyw  - надо во что-то конвертировать? или как тут вообще быть? Отчего может по-разному работать один и тот же код в дебаггере и в компасе?

Mary

Все дело в подключении.

вместо

#iKompasObject = Dispatch('KOMPAS.Application.5')
#iKompasObject = KAPI.KompasObject(iKompasObject)


лучше
module5 =  gencache.EnsureModule("{0422828C-F174-495E-AC5D-D31014DBBE87}", 0, 1, 0)
iKompasObject = module5.KompasObject(Dispatch("Kompas.Application.5")._oleobj_.QueryInterface(module5.KompasObject.CLSID, pythoncom.IID_IDispatch))
iDocument3D = iKompasObject.ActiveDocument3D()
print iDocument3D.fileName

+ Благодарностей: 1