Hallo ihr alle,
ich trau mich jetzt doch mal an meinen ersten Post ran, weil ich auch nach längerer Suche in den meist wirklich guten Forumsbeiträgen noch keine Lösung für mein Problem gefunden habe.
Ich arbeite mit Folgendem:
- AutoIT 3.3.12 (mit SciTE 3.4.4)
- Windows 7 Ultimate (64 Bit)
- MS Office 2010 SP2 (32 Bit)
Ich habe ein Skript entwickelt, um eine Excel-Tabelle mit Werten aus einer XML-Datei zu füllen. Das funktioniert grundsätzlich auch wunderbar.
Nervig ist nur, dass ich beim Öffnen von Excel über _Excel_Open (aus Excel.au3) immer einen "COM Error with DOM" erhalte, wenn Excel noch nicht läuft. Hier mal die Ausgabe mit eingebundener Debug.au3:
@@ DEBUG COM Error encountered in ParseStudioReport.au3 (66) :
Number = 0x80020006 (-2147352570)
WinDescription = Unbekannter Name.
Description =
Source =
HelpFile =
HelpContext =
LastDllError = 0
Retcode = 0x00000000
Ich verwende folgende Anweisung, um Excel zu öffnen:
[autoit]Local $oExcelH = _Excel_Open()
[/autoit]
Interessanterweise verhindert dieser COM Error aber nicht die weitere Ausführung des Skripts. Der Fehler wird also angezeigt, und dann geht alles problemlos weiter.
Die Zeile 66, die als Ursache des Fehlers angegeben wird, scheint sich übrigens nicht auf mein eigenes Skript zu beziehen, denn da wird an der Stelle nur eine einfache Integer-Variable abgefragt, die mit irgendwelchen COM-Objekten überhaupt nichts zu tun hat (die kommen erst ab Zeile 151 ins Spiel). Offensichtlich stolpert mein System über Zeile 66 in der Excel.au3, die zur Funktion _Excel_Open gehört:
[autoit]If Not $bForceNew Then $oExcel = ObjGet("", "Excel.Application")
[/autoit]
Ich hab es auch schon mit der Anweisung #AutoIt3Wrapper_UseX64=N oben in meinem Skript probiert (obwohl ich mich bei der Installation von AutoIT ohnehin für die 32-Bit-Variante entschieden hatte), was aber bei der kompilierten Version (.exe) keine Abhilfe gebracht hat.
Weiß vielleicht jemand Abhilfe? (Wie gesagt, der COM Error ist zwar nervig, aber kein Showstopper.)
Vielen Dank schon mal,
caseelse