IntelliSense:名称空间"MSXML2"在VS2012中没有成员"DOMDocument"

Eld*_*rry 6 c++ xml

我正在尝试编译我继承的项目,然后遇到此错误.以下是一些相关代码:

#include <msxml.h>
...
HRESULT hr;
hr = pDoc.CreateInstance(__uuidof(MSXML2::DOMDocument));
Run Code Online (Sandbox Code Playgroud)

有人可以帮忙吗?

Ste*_*one 9

我在Windows 8中看到类似的问题.似乎MSXML 6.0没有暴露DOMDocument,但它确实暴露了DOMDocument60.为了帮助其他人通过搜索到达此处,您可能还会看到编译器错误:错误C2039:'DOMDocument':不是'MSXML2'的成员

尝试进行以下更改以明确使用6.0接口:

#import "msxml6.dll"
...
HRESULT hr;
hr = pDoc.CreateInstance(__uuidof(MSXML2::DOMDocument60));
Run Code Online (Sandbox Code Playgroud)

我看到其他人有这个问题,但在Excel自动化的背景下.在这里看到这个讨论.