首页新闻找找看学习计划

import "msxml3.dll"编译过不去

0
悬赏园豆:5 [已关闭问题] 关闭于 2015-04-22 11:51

报错:

error C2872: “IXMLDOMNode”: 不明确的符号
5> 可能是“c:\program files (x86)\microsoft sdks\windows\v7.0a\include\msxml.h(531) : IXMLDOMNode”

“MSXML”: 不是类或命名空间名称
7>StorageManagerImpl.cpp(3731): error C2660: “IXMLDOMNodeList::nextNode”: 函数不接受 0 个参数
7>StorageManagerImpl.cpp(3735): error C2660: “IXMLDOMElement::getAttribute”: 函数不接受 1 个参数
7>StorageManagerImpl.cpp(3736): error C2660: “IXMLDOMElement::getAttribute”: 函数不接受 1 个参数
7>StorageManagerImpl.cpp(3739): error C2660: “IXMLDOMNodeList::nextNode”: 函数不接受 0 个参数
7>StorageManagerImpl.cpp(3743): error C2660: “IXMLDOMNodeList::nextNode”: 函数不接受 0 个参数
7>StorageManagerImpl.cpp(3756): error C2653: “MSXML”: 不是类或命名空间名称
7>StorageManagerImpl.cpp(3757): error C2653: “MSXML”: 不是类或命名空间名称
7>StorageManagerImpl.cpp(3763): error C2653: “MSXML”: 不是类或命名空间名称
7>StorageManagerImpl.cpp(3766): error C2660: “IXMLDOMDocument::createProcessingInstruction”: 函数不接受 2 个参数
7>StorageManagerImpl.cpp(3768): error C2660: “IXMLDOMNode::appendChild”: 函数不接受 1 个参数
7>StorageManagerImpl.cpp(3770): error C2660: “IXMLDOMDocument::createElement”: 函数不接受 1 个参数

 

请问什么问题?多谢!

jay_jie的主页 jay_jie | 初学一级 | 园豆:171
提问于:2015-03-12 15:08
< >
分享
所有回答(1)
0

import 后加一句 using namespace MSXML2;

Launcher | 园豆:45040 (高人七级) | 2015-03-12 16:04

加过了  没用

支持(0) 反对(0) jay_jie | 园豆:171 (初学一级) | 2015-03-12 16:06

@carl_bruce: 建立一个控制台程序:

#include "stdafx.h"

#import "msxml3.dll"

int _tmain(int argc, _TCHAR* argv[])

{

   MSXML2::IXMLDOMDocumentPtr pDoc;  

   HRESULT hr=pDoc.CreateInstance(__uuidof(MSXML2::DOMDocument30));

   return 0;

}

 

自己去测试下。

支持(0) 反对(0) Launcher | 园豆:45040 (高人七级) | 2015-03-12 16:24

你 import msxml3.dll 后又 include 了 <msxml.h> 了吧!这两个版本都不匹配。

你如果非要 include ,你该这样:

#import "msxml3.dll"
#include <MsXml2.h>   // 是 2

或者干脆这样:

#import "msxml3.dll"

支持(0) 反对(0) Launcher | 园豆:45040 (高人七级) | 2015-03-12 16:29

看你用 COM 这么痛苦,你还是用 XmlLite 吧!

支持(0) 反对(0) Launcher | 园豆:45040 (高人七级) | 2015-03-12 16:29
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册