加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

解析XML出错,无法创建DOMDocument对象

发布时间:2020-12-16 23:45:38 所属栏目:百科 来源:网络整理
导读:【问题】 加载XML配置文件时,创建DOMDocument对象总是失败,创建代码如下: MSXML2::IXMLDOMDocumentPtr pXMLDoc; MSXML2::IXMLDOMElementPtr xmlRoot; //创建DOMDocument对象 HRESULT hr = pXMLDoc.CreateInstance(__uuidof(MSXML2::DOMDocument40)); if(!

【问题】

加载XML配置文件时,创建DOMDocument对象总是失败,创建代码如下:

MSXML2::IXMLDOMDocumentPtr pXMLDoc;

MSXML2::IXMLDOMElementPtr xmlRoot;

//创建DOMDocument对象

HRESULT hr = pXMLDoc.CreateInstance(__uuidof(MSXML2::DOMDocument40));

if(!SUCCEEDED(hr))

{

AfxMessageBox(_T("无法创建DOMDocument对象,请检查是否安装了MS XML Parser 运行库!"));

return ;

}

以前都没这问题,今天不知道怎么一直这样,求大神指点

?

【回答】

我以前也碰过这个问题,那是因为没有安装xmldom?40或者坏了.
可以试试xmldom?26,?xmldom?30,?xmldom?60,?不要写死就只能创建40

[注]仿照这个,我写了如下的代码,就成功了

???? HRESULT HR = XMLDOC.CreateInstance(_uuidof(MSXML2::DOMDocument40));

?

???? if(!SUCCEEDED(HR))

???? {

????????HR = XMLDOC.CreateInstance(_uuidof(MSXML2::DOMDocument60));

????????if(!SUCCEEDED(HR))

????????{

????????????HR = XMLDOC.CreateInstance(_uuidof(MSXML2::DOMDocument30));

????????????if(!SUCCEEDED(HR))

????????????{

????????????????HR = XMLDOC.CreateInstance(_uuidof(MSXML2::DOMDocument26));

????????????????if(!SUCCEEDED(HR))

????????????????{

????????????????????goto EXIT;

????????????????}

????????????}

????????}

???? }

?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读