代码如下:
IXMLDOMDocumentPtr docPtr;
HRESULT hr = CoInitialize(NULL);
hr = docPtr.CreateInstance(_uuidof(MSXML2::DOMDocument40));
//hr返回0
_variant_t varXml(strXmlName);
_variant_t varOut((bool)TRUE);
varOut = docPtr->load(varXml);//这儿返回错误值
if(!((bool)varOut)) //进入错误处理为什么98下返回不正常值呢?
IXMLDOMDocumentPtr docPtr;
HRESULT hr = CoInitialize(NULL);
hr = docPtr.CreateInstance(_uuidof(MSXML2::DOMDocument40));
//hr返回0
_variant_t varXml(strXmlName);
_variant_t varOut((bool)TRUE);
varOut = docPtr->load(varXml);//这儿返回错误值
if(!((bool)varOut)) //进入错误处理为什么98下返回不正常值呢?
Header and IDL files: msxml2.h, msxml2.idl
varOut = docPtr->load("d:\\a.xml");就正确如果我把d:\\a.xml传给varXml,在调用docPtr->load(varXml)就返回False
后面应该是_variant_t的类型
不知道这个是否影响
你用的是不是win98阿?98有没有补丁
展开还真是load("d:\\a.xml" VT_BSTR),不过,奇怪的是在2000下这种是没有错误的,这涉及98系统缺少什么吗?
非常感谢你热心的帮忙,我再试试