【问题】

加载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;

                }

            }

        }

     }

 

解析XML出错,无法创建DOMDocument对象的更多相关文章

  1. 解析Class文件之创建InstanceKlass对象

    ClassFileParser::parseClassFile()方法会将解析Class文件的大部分结果保存到instanceKlass对象中.创建instanceKlass对象的代码如下: int ...

  2. sax解析xml文件,封装到对象中

    创建User.java类 public class User { private String id; private String name; private String age; private ...

  3. xstream解析xml时遇到特殊字符出错

    在xml中有"&"符号时,解析xml出错 解决办法: 将&替换成&

  4. 解析XML内容到User对象

    users.xml <?xml version="1.0" encoding="UTF-8"?> <xml-root> <conn ...

  5. Android之Pull解析XML

    一.Pull解析方法介绍 除了可以使用SAX和DOM解析XML文件,也可以使用Android内置的Pull解析器解析XML文件.Pull解析器的运行方式与SAX解析器相似.它也是事件触发的.Pull解 ...

  6. Android之DOM解析XML

    一.DOM解析方法介绍 DOM是基于树形结构的节点或信息片段的集合,允许开发人员使用DOM API遍历XML树,检索所需数据.分析该结构通常需要加载整个文档和构造树形结构,然后才可以检索和更新节点信息 ...

  7. Android之SAX解析XML

    一.SAX解析方法介绍 SAX(Simple API for XML)是一个解析速度快并且占用内存少的XML解析器,非常适合用于Android等移动设备. SAX解析器是一种基于事件的解析器,事件驱动 ...

  8. 【收藏用】--切勿转载JAVA 使用Dom4j 解析XML

    原帖地址 : http://blog.csdn.NET/yyywyr/article/details/38359049 解析XML的方式有很多,本文介绍使用dom4j解析xml. 1.环境准备 (1) ...

  9. Android使用SAX解析xml

    一.理论准备     SAX采用事件驱动机制来解析XML文档,每当SAX解析器发现文档开始.元素开始.文本.元素结束.文档结束等事件时,就会向外发送一次事件,而开发者则可以通过编写事件监听器处理这些事 ...

随机推荐

  1. JVM及class文件加载问题-学习使人快乐4

    今天看了些粗浅的JVM原理的知识 1.class文件编译过程: 词法分析 语法分析 源码 ---------Token流-------------语法树----------字节码 2.classloa ...

  2. 51Nod1577 异或凑数 线性基

    原文链接https://www.cnblogs.com/zhouzhendong/p/51Nod1577.html 题意 给定一个长度为 n 的序列. 有 m 组询问,每一组询问给出 L,R,k ,询 ...

  3. Period kmp

    For each prefix of a given string S with N characters (each character has an ASCII code between 97 a ...

  4. 005 Numpy的基本操作

    一:数组与标量,数组与数组之间的运算 1.数组与标量之间的计算 2.数组之间的加减乘除 3.元素级运算 二:.矩阵积 1.说明 这个的意思是第一个数组的列,必须和第二个数组的行的大小相同 2.运算 3 ...

  5. logging 日志

    1. 四步: import logging #初始化 logger = logging.getLogger("log_name") #设置级别 logger.setLevel(lo ...

  6. Kafka概述及安装部署

    一.Kafka概述 1.Kafka是一个分布式流媒体平台,它有三个关键功能: (1)发布和订阅记录流,类似于消息队列或企业消息传递系统: (2)以容错的持久方式存储记录流: (3)记录发送时处理流. ...

  7. Python import错误

    今天将一个文件命名为select,在其中import了  A文件 再然后发现 B文件import A文件,会将select也一起运行. 还出现的问题是 A中的类实例的时候说找不到. 最后想到selec ...

  8. QLayout: Attempting to add QLayout XXX to XXX, which already has a layout

    QLayout是Qt应用开发中一个非常重要的组件,然而平时使用的时候不小心经常会发现控制台有类似如下的警告: QLayout: Attempting to add QLayout "&quo ...

  9. Python内存管理以及数据类型

    一.内存管理 1.Cpython解释器的垃圾回收机制 什么是垃圾:当一个值身上没有绑定任何变量名(该值的引用计数=0)时,该值就是一个垃圾. Cpython解释器就会自动回收这样的垃圾. #引用计数增 ...

  10. AE文件特别大

    解决AE的输出文件太大_百度经验 在渲染队列的输出组件中把格式选项改为H.264,然后你会得到一个MP4文件. 然后最关键的一步,打开格式选项,把目标比特率和最大比特率均设10(比特率越高,视频质量越 ...