簡體   English   中英

在Delphi控制台應用程序中使用IXML

[英]use IXML in a Delphi Console Application

使用XML數據綁定,我創建了一個讀取xml文件的程序。 如果我運行GUI程序(Delphi XE7),它工作正常。 但是,我需要將其設置為可在命令行上使用的控制台應用程序。 我可以運行該程序,但一旦我想加載xml文件,我收到一個錯誤:“不支持接口”。

問題似乎是:

function Loadconversation(const FileName: string): IXMLConversation;
 begin
  Result := LoadXMLDocument(FileName).GetDocBinding('conversation', TXMLConversation,
                                            TargetNamespace) as IXMLConversation;
 end;

日Thnx。 阿爾揚

GUI應用程序和導致這種行為差異的控制台應用程序之間最明顯的區別是,默認情況下,COM未針對控制台應用程序進行初始化。 對於GUI應用程序,COM由框架自動初始化,但對於控制台應用程序,這不會發生。

因此,在控制台應用程序的開頭添加對CoInitializeEx的調用。

CoInitializeEx(nil, COINIT_APARTMENTTHREADED);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM