C,C++にてDOMを実装するには?

解決


ユウ  2006-06-08 20:53:57  No: 62099

C,C++にてXMLサーバにアクセスする際、
DOM(Document Object Model)実装が必要と参考書に書いてありました。
DOM実装に関する参考HPがありましたら、おしえてください。


επιστημη  2006-06-09 00:07:55  No: 62100

> DOM実装に関する参考HPがありましたら、おしえてください。

↓参考HPてゆーか、まんまDOM実装。
http://xml.apache.org/xerces-c/


ユウ  2006-06-09 00:48:41  No: 62101

επιστημηさん回答ありがとうございます。

できれば日本語HPで参考になるところありませんでしょうか?

やりたい事はVBで以下の命令と同等の事をしたいのですが・・
VCではどのようにすればよいでしょうか?

VBのソース

DIM AAAxml As Object
DIM bSuccess AS Boolean

Set AAAxml = CreateObject("Microsoft.XMLHTTP")
AAAxml.Open "POST","XMLサーバURL",False
'DOMにロード
Set xmldoc = CreateObject("Microsoft.XMLDOM")
xmldoc.async = "false"
bSuccess = xmldic.Load(AAAxml.responseXML)

よろしくお願いします。


dairygoods  2006-06-09 02:12:51  No: 62102

実装するのではなく、既製品を使うだけですね。

一例:
http://www.utj.co.jp/XML/DEV/dom/dxdom1_1.html
http://www.s34.co.jp/cpptechdoc/article/xml/persist/


ユウ  2006-06-09 05:54:13  No: 62103

dairygoodsさんありがとうございます。
>実装するのではなく、既製品を使うだけですね。
そのとおりです・・・

教えて頂いたサイトを参考に作成しているのですが、
おかしそうなところがありましたら、ご指摘ください。

/*現状ソース*/

#import  <msxml4.dll>
typedef  MSXML2::IXMLDOMNodeListPtr  INodeListPtr;
typedef  MSXML2::IXMLDOMNodePtr  INodePtr;
typedef  MSXML2::IXMLDOMElementPtr  IElementPtr;

HRESULT hr;
MSXML2::IXMLDOMDocument2Ptr pDoc;

// COMライブラリの初期化
CoInitialize(NULL);

//  ドキュメントのインスタンスを作成
hr = pDoc.CreateInstance( __uuidof(MSXML2::DOMDocument40) );
if(FAILED(hr)){
    return false;
}

pDoc->async = VARIANT_FALSE; 

//XMLファイルのロード
hr = pDoc->load("XXX.xml");
if(FAILED(hr)){
    return false;
}

// COMライブラリの終了処理
CoUninitialize();

/*現状ソースここまで*/

前文に抜けがあったので追加いたします。

VBソース
AAAxml.Open "POST","XMLサーバURL",False

//追加
AAAxml.sendRequestHeader"Content-Type","application/x-www-form-urlencoded"
AAAxml.send(~~~~~~~)
//追加end
'DOMにロード

としている部分でXMLサーバにpost命令をしているらしいのですが、
C、C++には上記相当の命令をご存知でしたら教えてください。

よろしくお願いします。


ユウ  2006-06-09 08:29:55  No: 62104

ロードはできました。

επιστημηさん  dairygoodsさん

ご教授ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加