Ich habe eine Anwendung (Grapher), die ich gerne mit Python und DOM nutzen möchte. Dabei würde ich gerne mit pywin32 das early binding nutzen, nur leider funktioniert es schlicht nicht:
python makepy.py -i (unter win32com/client/)und Auswahl der entsprechenden Bibliothek ergibt
Code: Alles auswählen
Grapher 7.0 Type Library
{C3079254-4AD5-4D81-9A6C-DD3C051EB0C7}, lcid=0, major=1, minor=0
>>> # Use these commands in Python code to auto generate .py support
>>> from win32com.client import gencache
>>> gencache.EnsureModule('{C3079254-4AD5-4D81-9A6C-DD3C051EB0C7}', 0, 1, 0)
Code: Alles auswählen
import win32com.client as win
win.gencache.EnsureModule('{C3079254-4AD5-4D81-9A6C-DD3C051EB0C7}', 0, 1, 0)
grapher = win.Dispatch("Grapher.Application")
print repr(grapher)
Wie hier unter "Late-Bound Automation" ausgeführt, wird also Late-Binding genutzt. (Mit Excel im Übrigen genau das selbe). Die entsprechende Datei liegt aber in win32com/client/gen_py und wird, wenn man sie löscht, bei Skriptaufruf auch neu generiert. Da es keinerlei Fehlermeldung gibt und er einfach automatisch das Late-Binding nutzt, habe ich momentan überhaupt keinen Ansatzpunkt.<COMObject Grapher.Application>