首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

,请问解析xml的Load有关问题。解决给分

2012-01-18 
十万火急,请教解析xml的Load问题。解决给分可执行exe程序和一个xml文件(collectpoint.xml)在同一个目录下,

十万火急,请教解析xml的Load问题。解决给分
可执行exe程序和一个xml文件(collectpoint.xml)在同一个目录下,通过
extern   WinApp   theApp;
XmlFilePath   =   theApp.GetAppPath();
获取应用程序路径XmlFilePath。
现在程序需要调用xml文件,load里面怎么写啊,调了很久都没弄好。运行提示Failed   load!请高手指点。

CComPtr <MSXML::IXMLDOMDocument>     m_iXMLDoc;
HRESULT   hr   =   m_iXMLDoc.CoCreateInstance(__uuidof(   DOMDocument   ));         //创建文档对象

VARIANT_BOOL   bFlag;
hr   =   m_iXMLDoc-> load(CComVariant(L "collectpoint.xml "),   &bFlag);   //load   xml文件

if(hr   ==   NULL)
          ::AfxMessageBox(_T( "Failed   load! "),MB_OK,0);



[解决办法]
库文件有没有呀?
[解决办法]
hr == NULL?这判断有问题吧,用FAILED(hr)。
返回0是成功啊。
[解决办法]
对HRESULT的判断是FAILD(hr)...
[解决办法]
//创建XML文档
MSXML2::IXMLDOMDocumentPtr pXmlDom;
//创建XML文档的根元素
MSXML2::IXMLDOMElementPtr xmlRoot;
//根元素名称
CComBSTR rootname;
//根元素的子结点链表
MSXML2::IXMLDOMNodeListPtr pNodeList;
//根元素的子结点
MSXML2::IXMLDOMNodePtr pNode;
CoInitialize(NULL);
// TODO: Add extra validation here

//创建XML文档实例
HRESULT hr=CoCreateInstance(__uuidof(MSXML2::DOMDocument40),NULL,CLSCTX_INPROC_SERVER,
__uuidof(MSXML2::IXMLDOMDocument),(void**)&pXmlDom);
if(!SUCCEEDED(hr))
{
::MessageBox(NULL, "无法创建DOMDocument对象,请检查是否安装了MS XML Parser 运行库! ", "error ", MB_OK);
return -1;
}
pXmlDom-> put_async(VARIANT_FALSE);
pXmlDom-> put_validateOnParse(VARIANT_FALSE);
pXmlDom-> put_resolveExternals(VARIANT_FALSE);
//将XML文档导入内存中
pXmlDom-> load((_variant_t)str);

热点排行