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

时间:2013-01-19 09:46:08

标签: c++ xml

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

#include <msxml.h>
...
HRESULT hr;
hr = pDoc.CreateInstance(__uuidof(MSXML2::DOMDocument));

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:9)

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

尝试进行以下更改以明确使用6.0界面:

#import "msxml6.dll"
...
HRESULT hr;
hr = pDoc.CreateInstance(__uuidof(MSXML2::DOMDocument60));

我看到其他人有这个问题,但在Excel自动化的背景下。请参阅讨论here