Создание детали с помощью Pythonwin

Автор Ханиган, 28.12.14, 16:40:23

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

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

Ханиган

Здравствуйте!
Записал макрос, создание детали. Через компас-макро запускается нормально, но через 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"

Подскажите пожалуйста, что не так!?
Пол-интернета перерыл и ничего конкретного!

Slaviation

Цитироватьно через pythonwin не хочет
Указанные модули лежат в каталоге <Буква диска>:\Python2(x)\Lib\site-packages\pythonwin\ ? Должны лежать там.
Кроме того в прицепе вариант, не использующий эти модули.
+ Благодарностей: 1

Ханиган

ЦитироватьУказанные модули лежат в каталоге <Буква диска>:\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'

Компас запущен(создание детали)!


Здесь получение указателя уже открытого документа. Создайте новую деталь и запустите макрос.
+ Благодарностей: 1

Ханиган

Я так и делаю, создаю новую деталь и запускаю макрос и... НИЧЕГО!
Пробовал на двух ПК. На одном вышеописанная ошибка возникает, а на другом вот такая:
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'

Slaviation

ЦитироватьAttributeError: 'NoneType' object has no attribute 'KompasObject'
Предварительно нужно зарегистрировать КОМПАС, запустив его с ключом register
kompas.exe -register
+ Благодарностей: 1

Ханиган

ЦитироватьПредварительно нужно зарегистрировать КОМПАС, запустив его с ключом register
kompas.exe -register
А как это?

Можно из TC или командной строки, см. рис.

lyxey



Прав (паролей) админа не имею.

Их имеет, Ваш администратор.
Если Вы хотите попробовать Библиотеку пакетного сохранения, то не теряйте время, библиотека работает с Компас-3D V14.2  и выше.

lyxey


Цитата: Sabahs от 25.06.15, 11:10:53
Их имеет, Ваш администратор.
Если Вы хотите попробовать Библиотеку пакетного сохранения, то не теряйте время, библиотека работает с Компас-3D V14.2  и выше.

Аналогично



Похоже замкнутый круг :(

На Вашей картинки видно, что у Вас Компас-3D V13, библиотека работать не будет, даже, если класс будет зарегистрирован.

lyxey

Вот печаль то печаль, что ж делать? Так и сохранять Bullzip - ом :(