Как мне написать скрипт OLE-компонента с использованием Python?
Я хотел бы использовать Python для создания сценария приложения, которое рекламирует себя как компонент OLE. Как мне начать?
Я еще не знаю, какие методы мне нужно вызвать для компонентов, к которым я буду обращаться. Должен ли я использовать win32com для загрузки этих компонентов, а затем начать нажимать "Tab" в IPython?
5 ответов
Вы можете найти пример на этом сайте. OLE и относится к COM и ActiveX, так что вы должны следить за этими условиями. У вас есть доступ к этой книге из O'Reilly - Программирование на Python для Win32?
Существует также список рассылки Python Win32.
win32com - хороший пакет для использования, если вы хотите использовать интерфейс IDispatch для управления вашими объектами (медленно). comtypes - это лучший, родной Python-пакет, который использует необработанный подход COM для общения с вашими элементами управления. WxPython использует комтипы, чтобы дать вам окно контейнера ActiveX из Python ... сладко.
Вам нужен пакет win32com. Некоторые примеры:
from win32com.client.dynamic import Dispatch
# Excel
excel = Dispatch('Excel.Application')
# Vim
vim = Dispatch('Vim.Application')
А потом звони на них как хочешь.
PythonWin ( http://sourceforge.net/projects/pywin32/), поставляемый в комплекте с python-win32, поставляется с собственным COM-браузером как часть среды оболочки и отладки.
Пожалуйста, посмотрите на пакет python-win32 и, в частности, на его win32com API.