MSXMLについて

解決


かかし  2010-02-24 23:23:40  No: 71436

お世話になります。
現在、Visual Studio2005 C++のダイアログベースにて
MSXML(msxml4.dll)を用いて、XMLファイルの保存を
行っています。自分のPC上では問題なく動作しますが
Visual Studio2005 がインストールされていないPCでは
実行時にエラーとなってしまいます。
また、XMLファイルを保存する処理を取ると、他のPC
でも動作します。

御存知の方がおりましたらお教え下さい。


maru  2010-02-24 23:34:32  No: 71437

> 実行時にエラーとなってしまいます。
エラーメッセージは?

「XMLファイルを保存する処理」というのがどんなコードになっているのか
知らないけど、対象のマシンにmsxml4.dllは入っているんですか?


かかし  2010-02-25 00:16:57  No: 71438

お世話になります。

対象のマシンにmsxml4.dllは入っています。

再度コード確認したところ、COMの初期化と終了が
抜けていました。コード修正したところ正常に動作
しました。お騒がせ致しました。

// COMの初期化
::CoInitialize(NULL);

CExecuteResultDlg dlg;
m_pMainWnd = &dlg;
INT_PTR nResponse = dlg.DoModal();
if (nResponse == IDOK)
{
// TODO: ダイアログが <OK> で消された時のコードを
//  記述してください。
}
else if (nResponse == IDCANCEL)
{
// TODO: ダイアログが <キャンセル> で消された時のコードを
//  記述してください。
}

// COMの終了
::CoUninitialize();


maru  2010-02-25 00:34:30  No: 71439

> 再度コード確認したところ、COMの初期化と終了が
> 抜けていました。
これが原因だとすると、
> 自分のPC上では問題なく動作しますが
につながらない気がしますが...


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

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






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