Hallo Leute,
es ist schon ein paar Tage her, aber ich bin an diesem Thema weiter gekommen. Es lag nicht an der Benutzung im speziellen sondern konkret an einer Stelle.
folgender Code arbeitet ohne Probleme:
Delphi-Quellcode:
wb.OleObject.Document.All.Item('ItemName').Value := 'Test';
wb.OleObject.Document.All.Item('ItemName').Value := Edit1.Text;
folgender nicht:
Delphi-Quellcode:
NewText : String;
...
NewText := 'Test';
wb.OleObject.Document.All.Item('ItemName').Value := NewText;
aber so:
Delphi-Quellcode:
NewText : String;
...
NewText := 'Test';
wb.OleObject.Document.All.Item('ItemName').Value := Variant(NewText);
Das schien das ganze Problem gewesen zu sein. Ich denke mal, dass mein Problem erst darurch aufgetaucht ist, dass ich in meiner kleinen Testanwendung Edit1.Text zugewiesen habe und in meinem eigentlichen Code einen String. Für mich war das das gleiche und so habe ich den Unterschied in der Zuweisung gar nicht erst beachtet. Nach dem ich mich durch die Hilfe mittels IXMLDocument2 ... Item usw. gehangelt hatte viel mir die variante Parameterverwendung auf. Naja, nun klappts mit der Typkonvertierung ohne Probleme. Zusätzlich hat mich natürlich noch der Compiler aus der Bahn geworfen, da er dann auch immer schon für die Prüfung auf Document Adresse 0000 ausgeworfen hatte. So ist das halt im Leben.
Wollte auf jeden Fall noch die Lösung posten, damit der Nächste nicht leer da steht.
Zusätzlich noch mal herzlichen Dank für die Code-Snippes zu testen.
Gruß oki
[edit] kurzer Nachtrag; das unter D2007; Gruß oki [/edit]