#import <msxml3.dll>
using namespace MSXML2;IXMLDOMDocumentPtr pXmlDoc;
CoInitialize(NULL);

hr = ::CoCreateInstance(CLSID_DOMDocument,NULL,CLSCTX_INPROC_SERVER,
IID_IXMLDocument,(LPVOID*)&pXmlDoc);
编译时不认识CLSID_DOMDocument,这在哪儿定义的呀,最后包含#include <msxml.h>也不起作用,我的IE是5.0的。

解决方案 »

  1.   

    #import <msxml.dll>需要安装SDK
      

  2.   

    具体的SDK名字和下载地址?
    谢谢!
      

  3.   

    #import <msxml4.dll>
    using namespace MSXML2;
    xml安装文件需要可以可以mail给我
    [email protected]
      

  4.   

    // 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;
    }