社区
HTML/XML
帖子详情
在XML操作中執行CoCreate指令時無法識別CLSID_DOMDocument改怎麼解決
sunrise1234
2002-07-12 03:23:12
在XML操作中執行CoCreate指令時無法識別CLSID_DOMDocument改怎麼解決CoCreateInstance(CLSID_DOMDocument,NULL,
CLSCTX_INPROC_SERVER,
IID_IXMLDocument,
(LPVOID*)&m_pXMLDocument);
...全文
174
3
打赏
收藏
在XML操作中執行CoCreate指令時無法識別CLSID_DOMDocument改怎麼解決
在XML操作中執行CoCreate指令時無法識別CLSID_DOMDocument改怎麼解決CoCreateInstance(CLSID_DOMDocument,NULL, CLSCTX_INPROC_SERVER, IID_IXMLDocument, (LPVOID*)&m_pXMLDocument);
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Lightest
2002-07-16
打赏
举报
回复
试试
#import "msxml2.dll"
sunrise1234
2002-07-15
打赏
举报
回复
no msxml3.dll
Lightest
2002-07-12
打赏
举报
回复
#import "msxml3.dll"
using namespace MSXML2;
void dump_com_error(_com_error &e)
{
printf("Error\n");
printf("\a\tCode = %08lx\n", e.Error());
printf("\a\tCode meaning = %s", e.ErrorMessage());
_bstr_t bstrSource(e.Source());
_bstr_t bstrDescription(e.Description());
printf("\a\tSource = %s\n", (LPCSTR) bstrSource);
printf("\a\tDescription = %s\n", (LPCSTR) bstrDescription);
}
int main(int argc, char* argv[])
{
CoInitialize(NULL);
try{
IXMLDOMDocumentPtr pXMLDoc;
HRESULT hr = pXMLDoc.CreateInstance(__uuidof(DOMDocument));
pXMLDoc->async = false; // default - true,
hr = pXMLDoc->load("stock.xml");
if(hr!=VARIANT_TRUE)
{
IXMLDOMParseErrorPtr pError;
pError = pXMLDoc->parseError;
_bstr_t parseError =_bstr_t("At line ")+ _bstr_t(pError->Getline()) + _bstr_t("\n")+ _bstr_t(pError->Getreason());
MessageBox(NULL,parseError, "Parse Error",MB_OK);
return 0;
}
CComPtr<IStream> pStream;
hr = CreateStreamOnHGlobal(NULL, true, &pStream);
hr = pXMLDoc->save(pStream.p);
LARGE_INTEGER pos;
pos.QuadPart = 0;
//the key is to reset the seek pointer
pStream->Seek((LARGE_INTEGER)pos, STREAM_SEEK_SET, NULL);
IXMLDOMDocumentPtr pXMLDocNew;
hr = pXMLDocNew.CreateInstance(__uuidof(DOMDocument));
pXMLDocNew->async = false;
hr = pXMLDocNew->load(pStream.p);
if(hr!=VARIANT_TRUE)
{
IXMLDOMParseErrorPtr pError;
pError = pXMLDocNew->parseError;
_bstr_t parseError =_bstr_t("At line ")+ _bstr_t(pError->Getline()) + _bstr_t("\n")+ _bstr_t(pError->Getreason());
MessageBox(NULL,parseError, "Parse Error",MB_OK);
return 0;
}
MessageBox(NULL,(LPTSTR)pXMLDocNew->xml, "XML content",MB_OK);
}
catch(_com_error &e)
{
dump_com_error(e);
}
CoUninitialize();
return 0;
}
XML
接口对象创建时,链接出现错误的解决
昨日在使用MS
XML
进行
XML
文件处理时,用如下方式创建
XML
文档接口对象时出现了链接失败的现象,屡试不成。在stdafx.h
中
, #include "Ms
Xml
2.h" 在实体类的cpp文件
中
,如下创建接口对象: CComPtr
XML
Doc; HRESULT hr =
XML
Doc.C
oCr
eate
Instance(
CLSID
_
DOM
Document
2 ); 就是这样的语
请问一下VC下的
XML
解析需要的环境?
我刚开始做
XML
,碰到很多问题。 #pragma using namespace MS
XML
2; 结果连
CLSID
_
DOM
Document
、IID_I
XML
DOM
Node等GUID都不认识,哪儿定义的呀? 我的是IE5. 问题点数:100、回复次数:18Top 1 楼door_proxy(重新再来)回复于 2005-12-14 10:0
VC++环境下
XML
操作
的完整指南
可扩展标记语言(
XML
)作为一种数据交换格式,已被广泛应用于网络数据传输和存储。
XML
通过使用一系列规则和结构来描述数据,确保不同系统间的数据交换保持一致性和准确性。
XML
是一种标记语言,用于存储和传输数据,但与HTML不同,它不是为了显示数据,而是为了描述数据。它允许用户创建自己的标签,定义自己的数据类型,从而让数据的结构和内容具有自解释性。
DOM
(文档对象模型)是将文档以树形结构呈现的编程接口,它定义了文档的逻辑结构和如何通过编程语言去访问文档结构。
微软的MS
XML
解析器
微软的MS
XML
解析器读一个
XML
文档,然后把它的内容解析到一个抽象的信息容器
中
称为节点(NODES)。这些节点代表文档的结构和内容,并允许应用程序来读和
操作
文档
中
的信息而不需要显示知道的
XML
的语义。在一个文档被解析以后,它的节点能够在任何时候被浏览而不需要保持一定的顺序。对开发人员来说,最重要的编程对象是
DOM
Document
。
DOM
Document
对象通过暴露属性和方法来允许浏览、查询和修改
VS2010
中
使用 MS
XML
生成解析
XML
文件
初始化com if (!AfxOleInit()) { AfxMessageBox("Ole initialize failed."); return FALSE; } 生成
XML
文件 void CtestDlg::Construct
Document
() { CComPtr<I
XML
DOM
Document
> p
Xml
Doc; CComQIPtr<I
XML
DO...
HTML/XML
3,056
社区成员
8,075
社区内容
发帖
与我相关
我的任务
HTML/XML
VC/MFC HTML/XML
复制链接
扫一扫
分享
社区描述
VC/MFC HTML/XML
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章