Форум сайта python.su
0
Друзья, приветствую.
Вопрос следующий: Кто-нибудь разрабатывал COM-приложения на питоне? Для любого ли приложения можно использовать Питон? Нужны ли для этого специализированные модули какие-нибудь?
Офлайн
253
Не пробовал. Но может вам https://pypi.python.org/pypi/pywin32 поможет?
lexa24Если приложение для ОС в которой нет питона или компилятора из питона в native коды то тогда наверное и питон нельзя напрямую использовать. Например com практически нельзя использовать нигде кроме windows. На очень мелких микроконтроллерах питон не используют. Там нет не только питона но и операционной системы :)
Для любого ли приложения можно использовать Питон?
Отредактировано doza_and (Июнь 10, 2015 20:58:35)
Офлайн
0
doza_and
Не пробовал. Но может вам https://pypi.python.org/pypi/pywin32 поможет?
Офлайн
0
Всем привет
Решилась одна проблемка, о появилось две других:
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
)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
Отредактировано lexa24 (Июнь 17, 2015 15:20:15)
Офлайн