Библиотека Juno, написанная Джоном Чепменом, содержит модули поддержки COM. К сожалению, не в курсе последних версий компилятора.
http://www.dsource.org/projects/juno/wiki/ComProgramming/ "Juno COM"
Должно быть частью Фобоса, рядом.
Ханнесу Дж. Используйте auto вместо delphi's var
// Создать экземпляр IXMLDOMDocument3.
auto doc = DOMDocument60.coCreate! (IXMLDOMDocument3);
область (выход) doc.Release ();
// Создать экземпляр поставщика событий.
auto events = new EventProvider! (XMLDOMDocumentEvents) (doc);
события области видимости (выхода) .Release ();
events.bind ("onReadyStateChange", {
writefln («состояние изменилось»);
});
events.bind ("onDataAvailable", {
writefln («данные доступны»);
});
// Попросить документ загрузить асинхронно.
* * 1 022 doc.put_async (com_true);
// Загрузить документ XML.
com_bool result;
doc.load ("books.xml" .toVariant (true), результат);