jupp ... hab CoInitialize auch nur für die Consolenanwendung benötigt, da es dort keine Forms-Dingens gibt
D2009 ... ich kann's dann gern auch nochmal in TDE und D7 versuchen
(alles einzeln aufgerufen ... je neuer Programmstart)
Delphi-Quellcode:
// keine Exception
XML := TXMLDocument.Create(
nil);
XML.Free;
// ---------------------------
// Benachrichtigung über Debugger-Exception
// ---------------------------
// Im Projekt CheckLibs.exe ist eine Exception der Klasse EOleSysError
// mit der Meldung 'CoInitialize wurde nicht aufgerufen' aufgetreten.
// ---------------------------
// Anhalten Fortsetzen Hilfe
// ---------------------------
XML := TXMLDocument.Create(
nil);
XML.Active := True; <<<<
XML.Free;
// keine Exception
CoInitialize(
nil);
XML := TXMLDocument.Create(
nil);
XML.Active := True;
XML.Free;
// keine Exception
CoInitialize(
nil);
XML := TXMLDocument.Create(
nil);
XML.Active := True;
XML.Version := '
1.0';
XML.StandAlone := '
yes';
XML.Encoding := '
UTF-8';
XML.Free;
// keine Exception
CoInitialize(
nil);
XML := TXMLDocument.Create(
nil);
XML.Active := True;
XML.Version := '
1.0';
XML.StandAlone := '
yes';
XML.Encoding := '
UTF-8';
XML.AddChild('
xml');
XML.Free;
// und ebenfalls keine Exception
CoInitialize(
nil);
XML := TXMLDocument.Create(
nil);
XML.Active := True;
XML.Version := '
1.0';
XML.StandAlone := '
yes';
XML.Encoding := '
UTF-8';
XML.AddChild('
xml');
For i := 0
to 9999
do XML.DocumentElement.AddChild(...);
XML.Free;