请问一下VC下的XML解析需要的环境? 我刚开始做XML,碰到很多问题。#pragma <msxml3.dll>using namespace MSXML2;结果连CLSID_DOMDocument、IID_IXMLDOMNode等GUID都不认识,哪儿定义的呀?我的是IE5. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 只有msxml3.dll,没有lib文件么?用#import导入该库吧 就是加了#pragma comment(lib,"msxml.lib")还是不认识。 用#import直接引入动态库。如同引入ADO动态库:#import "c:\program files\common files\system\ado\msado15.dll"这样。 安装msxml3后,直接使用COM接口访问 我是装完windows2000系统后,winnt目录下就有msxml3.dll等文件,还需要装msxml3吗?IXMLDOMDocument *pXmlDoc;pXmlDoc.CreateInstance(__uuidof(DOMDocument)); 成功的hr = ::CoCreateInstance(CLSID_DOMDocument,NULL,CLSCTX_INPROC_SERVER, IID_IXMLDocument,(LPVOID*)&pXmlDoc); 换成第二种方式就不行了,不认识CLSID_DOMDocument,怎么办? Get Ready to Work with MSXML:http://msdn.microsoft.com/library/default.asp?url=/library/en-us/xmlsdk/html/def1c84a-6f8a-4b4d-b919-d1a703118214.asp 注册与否跟认识CLSID_DOMDocument没什么关系吧。 注册与否跟认识CLSID_DOMDocument没什么关系吧-------------------------------------------没关系。但如果不注册,无法使用DLL,除非用LoadLibrary(...)如上各位所说,用#import "路径\msxml3.dll",就认识CLSID_DOMDocument了 // test1.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include <iostream.h>#import "C:\\WINNT\\system32\\msxml3.dll"int main(int argc, char* argv[]){ cout<<("Hello World!\n"); int nRetCode = 1; CoInitialize(NULL); // TODO: code your application's behavior here. MSXML2::IXMLDOMDocumentPtr pDoc; MSXML2::IXMLDOMElementPtr xmlRoot; //创建DOMDocument对象 HRESULT hr = pDoc.CreateInstance(__uuidof(MSXML2::DOMDocument30)); if(!SUCCEEDED(hr)) { MessageBox(NULL, "无法创建DOMDocument对象,请检查是否安装了MS XML Parser 运行库!", "error", MB_OK); } //根节点的名称为china pDoc->raw_createElement((_bstr_t)(char*)"china", &xmlRoot); pDoc->raw_appendChild(xmlRoot, NULL); MSXML2::IXMLDOMElementPtr childNode ; pDoc->raw_createElement((_bstr_t)(char*)"City", &childNode); childNode->Puttext("WuHan");//节点值 childNode->setAttribute("population","8,000,000");//属性名,属性值 childNode->setAttribute("area","10000"); xmlRoot->appendChild(childNode); pDoc->raw_createElement((_bstr_t)(char*)"City", &childNode); childNode->Puttext("ShangHai"); childNode->setAttribute("population","12,000,000"); childNode->setAttribute("area","12000"); xmlRoot->appendChild(childNode); //保存到文件 //如果不存在就建立,存在就覆盖 pDoc->save("c:\\he.xml"); return 0;} to gzlyb(冰风):没关系。但如果不注册,无法使用DLL,除非用LoadLibrary(...)如上各位所说,用#import "路径\msxml3.dll",就认识CLSID_DOMDocument了--------------------------------------------------------------------我的msxml3.dll在winnt\system32下,且手工注册了一次,提示也注册成功,但还是不认识CLSID_DOMDocument。 能不能帮我看看CLSID_DOMDocument在什么文件里定义的? 三维坐标的旋转 2k下为什么不能注册activex,XP以上系统就能注册? 多线程环境下的状态机设计 好久没来了,大家新年好!!!都来站各喜气吧,25号放假来揭帖~~~ 写文件的问题 MSCOMM32.OCX控件的注册 宏的问题 如何添加一个右键菜单????!!!! 请再个解释一下回调函数,我是也是学习钩子的时候遇到这个问题的 通过取模软件对图片进行取模,数据以16进制输出,共输出6万个数据,我现在需要把其中的0x00全部筛选出去,请问各位有什么好办法? 请教一个视频采集图象处理的问题,如何把显示出来的视频背景变做透明。谢谢! 关于Sleep的问题(初学者一问)
如同引入ADO动态库:
#import "c:\program files\common files\system\ado\msado15.dll"这样。
IXMLDOMDocument *pXmlDoc;pXmlDoc.CreateInstance(__uuidof(DOMDocument)); 成功的hr = ::CoCreateInstance(CLSID_DOMDocument,NULL,CLSCTX_INPROC_SERVER,
IID_IXMLDocument,(LPVOID*)&pXmlDoc);
换成第二种方式就不行了,不认识CLSID_DOMDocument,
怎么办?
-------------------------------------------
没关系。但如果不注册,无法使用DLL,除非用LoadLibrary(...)
如上各位所说,用#import "路径\msxml3.dll",就认识CLSID_DOMDocument了
//#include "stdafx.h"
#include <iostream.h>
#import "C:\\WINNT\\system32\\msxml3.dll"int main(int argc, char* argv[])
{
cout<<("Hello World!\n");
int nRetCode = 1;
CoInitialize(NULL);
// TODO: code your application's behavior here.
MSXML2::IXMLDOMDocumentPtr pDoc;
MSXML2::IXMLDOMElementPtr xmlRoot;
//创建DOMDocument对象
HRESULT hr = pDoc.CreateInstance(__uuidof(MSXML2::DOMDocument30));
if(!SUCCEEDED(hr))
{
MessageBox(NULL, "无法创建DOMDocument对象,请检查是否安装了MS XML Parser 运行库!", "error", MB_OK);
}
//根节点的名称为china
pDoc->raw_createElement((_bstr_t)(char*)"china", &xmlRoot);
pDoc->raw_appendChild(xmlRoot, NULL);
MSXML2::IXMLDOMElementPtr childNode ;
pDoc->raw_createElement((_bstr_t)(char*)"City", &childNode);
childNode->Puttext("WuHan");//节点值
childNode->setAttribute("population","8,000,000");//属性名,属性值
childNode->setAttribute("area","10000");
xmlRoot->appendChild(childNode);
pDoc->raw_createElement((_bstr_t)(char*)"City", &childNode);
childNode->Puttext("ShangHai");
childNode->setAttribute("population","12,000,000");
childNode->setAttribute("area","12000");
xmlRoot->appendChild(childNode);
//保存到文件
//如果不存在就建立,存在就覆盖
pDoc->save("c:\\he.xml");
return 0;
}
没关系。但如果不注册,无法使用DLL,除非用LoadLibrary(...)
如上各位所说,用#import "路径\msxml3.dll",就认识CLSID_DOMDocument了
--------------------------------------------------------------------
我的msxml3.dll在winnt\system32下,且手工注册了一次,提示也注册成功,但还是不
认识CLSID_DOMDocument。