Здравствуйте!
Записал макрос, создание детали. Через компас-макро запускается нормально, но через pythonwin не хочет!
Как запустить скрипт python(создание детали) через pythonwin? Компас активен!
Модули имеются:
Kompas6API5.py
Kompas10API5.py
Kompas10API7.py
ksConstants.py
ksConstants3D.py
LDefin2D.py
LDefin3D.py
MiscellaneousHelpers.py
piksupport.py
При запуске скрипта выдает такую ошибку(PythonWin 2.6):
"Traceback (most recent call last):
File "C:\Python27\Lib\site-packages\pythonwin\pywin\framework\scriptutils.py", line 326, in RunScript
exec codeObject in __main__.__dict__
File "C:\Python26\Lib\site-packages\pythonwin\El_muft.m3m", line 9, in <module>
Kompas,doc3d=start3d()
NameError: name 'start3d' is not defined"
Подскажите пожалуйста, что не так!?
Пол-интернета перерыл и ничего конкретного!
Цитироватьно через pythonwin не хочет
Указанные модули лежат в каталоге <Буква диска>:\Python2(x)\Lib\site-packages\pythonwin\ ? Должны лежать там.
Кроме того в прицепе вариант, не использующий эти модули.
ЦитироватьУказанные модули лежат в каталоге <Буква диска>:\Python2(x)\Lib\site-packages\pythonwin\ ?
Да, модули лежат именно там! Ваш вариант опробую вечером! СПАСИБО.
ЦитироватьУказанные модули лежат в каталоге <Буква диска>:\Python2(x)\Lib\site-packages\pythonwin\ ? Должны лежать там.
Кроме того в прицепе вариант, не использующий эти модули.
А у вас, этот скрипт запускается, без ошибок??
У меня, выдает ошибку:
Traceback (most recent call last):
File "C:\Python27\Lib\site-packages\pythonwin\pywin\framework\scriptutils.py", line 326, in RunScript
exec codeObject in __main__.__dict__
File "C:\MFNew.m3m", line 29, in <module>
iPart = iDocument3D.GetPart(LDefin3D.pTop_Part)
AttributeError: 'NoneType' object has no attribute 'GetPart'
Компас запущен(создание детали)!
Здесь получение указателя уже открытого документа. Создайте новую деталь и запустите макрос.
Я так и делаю, создаю новую деталь и запускаю макрос и... НИЧЕГО!
Пробовал на двух ПК. На одном вышеописанная ошибка возникает, а на другом вот такая:
Traceback (most recent call last):
File "C:\Python27\Lib\site-packages\pythonwin\pywin\framework\scriptutils.py", line 326, in RunScript
exec codeObject in __main__.__dict__
File "C:\MFNeew.m3m", line 23, in <module>
module_5, iKompasObject, LDefin3D = get_kompas_api5()
File "C:\MFNeew.m3m", line 18, in get_kompas_api5
api = module.KompasObject(Dispatch("Kompas.Application.5")._oleobj_.QueryInterface(module.KompasObject.CLSID, pythoncom.IID_IDispatch))
AttributeError: 'NoneType' object has no attribute 'KompasObject'
ЦитироватьAttributeError: 'NoneType' object has no attribute 'KompasObject'
Предварительно нужно зарегистрировать КОМПАС, запустив его с ключом register
kompas.exe -register
ЦитироватьПредварительно нужно зарегистрировать КОМПАС, запустив его с ключом register
kompas.exe -register
А как это?
Можно из TC или командной строки, см. рис.
(https://forum.ascon.ru/proxy.php?request=http%3A%2F%2Fi11.pixs.ru%2Fstorage%2F3%2F8%2F7%2FBezimyanni_4948906_17793387.png&hash=c4e2e5d53a25cd45c2a785a0039b9b3453ceff41)
Прав (паролей) админа не имею.
Их имеет, Ваш администратор.
Если Вы хотите попробовать Библиотеку пакетного сохранения (http://forum.ascon.ru/index.php/topic,16941.msg210877.html#msg210877), то не теряйте время, библиотека работает с Компас-3D V14.2 и выше.
Цитата: Sabahs от 25.06.15, 11:10:53
Их имеет, Ваш администратор.
Если Вы хотите попробовать Библиотеку пакетного сохранения (http://forum.ascon.ru/index.php/topic,16941.msg210877.html#msg210877), то не теряйте время, библиотека работает с Компас-3D V14.2 и выше.
Аналогично
(https://forum.ascon.ru/proxy.php?request=http%3A%2F%2Fi11.pixs.ru%2Fstorage%2F9%2F0%2F6%2FBezimyanni_6052534_17792906.png&hash=17263948f7a69a4ea6d05d8493fddff241d93061)
Похоже замкнутый круг :(
На Вашей картинки видно, что у Вас Компас-3D V13, библиотека работать не будет, даже, если класс будет зарегистрирован.
Вот печаль то печаль, что ж делать? Так и сохранять Bullzip - ом :(
Компас обновлять.