Найти - Пользователи
Полная версия: API и Питон
Начало » Python для новичков » API и Питон
1
lexa24
Друзья, приветствую.


Вопрос следующий: Кто-нибудь разрабатывал COM-приложения на питоне? Для любого ли приложения можно использовать Питон? Нужны ли для этого специализированные модули какие-нибудь?
doza_and
Не пробовал. Но может вам https://pypi.python.org/pypi/pywin32 поможет?
lexa24
Для любого ли приложения можно использовать Питон?
Если приложение для ОС в которой нет питона или компилятора из питона в native коды то тогда наверное и питон нельзя напрямую использовать. Например com практически нельзя использовать нигде кроме windows. На очень мелких микроконтроллерах питон не используют. Там нет не только питона но и операционной системы :)
lexa24
doza_and
Не пробовал. Но может вам https://pypi.python.org/pypi/pywin32 поможет?


Спасибо за подсказку) Писать под Windows планирую.
Будем посмотреть)) Благодарствую))
lexa24
Всем привет

Решилась одна проблемка, о появилось две других:
1) Получается создавать новые файлы Инвентора через Питон, но вот обратиться к его параметрам никак не удается - пишет ошибки, что указанные атрибуты не входят в библиотеки:
import os
import win32com.client
from win32com.client import constants
os.system(r'C://Programm Files/Autodesk/Inventor 2014/Bin/Inventor.exe')
invApp = win32com.client.Dispatch("Inventor.Application")
invApp.Visible = True
asd = invApp.Documents.Add(constants.kPartDocumentObject,"",True)
qwe=invApp.Documents.Item(asd)
#nsk=qwe.PartDocument.Sketches.Add()
#nsk = invApp.ComponentDefinition.Sketches.Add()
#nsk=invApp.Documents.Add(constants.k2DSketchPunchRepresentation, "", True)
#ewq=invApp.Documents.PartDocument(asd).Add


Закомментированные строки - разные попытки добавить скетч в новом файле.

2) Тут вообще тяжко (для меня)

import os
import win32com.client
from win32com.client import constants
#from  import 
os.system(r'C://Programm Files/Autodesk/Inventor 2014/Bin/Inventor.exe')
invApp = win32com.client.Dispatch("Inventor.Application")
invApp.Visible = True
from win32com.client import gencache
mod = gencache.EnsureModule('{D98A091D-3A0F-4C3E-B36E-61F62068D488}', 0, 1, 0)
invApp=mod.Application(invApp) 
oAssemblyDoc=invApp.Documents.Add(constants.kAssemblyDocumentObject, "", True)
asd = invApp.Documents.Add(constants.kPartDocumentObject,"",True)
qwe=invApp.Documents.Item(asd)
oAss = oAssemblyDoc.Activate

При запуске появляется ошибка:
TypeError: ‘module’ object is not callable

На многих форумах пишут, что решение выглядит примерно так:
from YourClass import YourClass
или
from YourClassParentDir import YourClass

Что это значит? Как это реализовать?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB