DOBON.NET DOBON.NETプログラミング掲示板過去ログ

DLLのデバッグについて

環境/言語:[XP]
分類:[VB6以前]

AxtiveX DLLとして作成するプログラムのデバッグ(ステップ実行)をしたく
思っています。

「プロジェクト」メニュー→「HogeHoge」のプロパティ→「デバッグ」タブ
 →「コンポーネントが作成されるまで待機する」にチェック→ステップ実行
 を開始したい箇所でブレイクポイント設定

これで待機しているつもりなんですが、実行ファイルからはDLLに対してコー
ルしてしまいます。

どなたか、DLLのデバッグの仕方について解説しているサイトなどご存知でし
たらお教え頂けませんでしょうか。

よろしくお願いします。
> これで待機しているつもりなんですが、実行ファイルからはDLLに対してコー
> ルしてしまいます。
当方のWinXP環境で試してみましたが、exeファイルから呼び出した場合に、
実行中のプロジェクトが参照され、期待通りにデバッグできています。


確認ですが、「プロジェクト プロパティ」の『コンポーネント』タブにて、
“バージョン間の互換性”の設定は何になっていますか?
(この部分が設定されていないと、exeからはデバッグできないと思います)

あるいは……もしかして、SxS されていませんか?

たとえば、Project1.exe.manifest ファイルにて、
<file name="ComTest_1_0.dll">
<comClass
clsid="{F199BE33-9D65-434D-B288-1A8CF264CF3B}"
progid="ComTest.ComClass" />
</file>
のような記述がされていた場合、「実行中のプロジェクト」ではなく、
「同一フォルダのComTest_1_0.dll」の方が呼び出されてしまいますけれども。


> どなたか、DLLのデバッグの仕方について解説しているサイトなどご存知でし
> たらお教え頂けませんでしょうか。
このあたりしか知りません。m(_ _)m

http://www.microsoft.com/japan/developer/library/VBCon98/vbconcreatingtestprojectforinprocesscomponent.htm
http://www.microsoft.com/japan/developer/library/VBCon98/vbcontestingdebuggingoleservers.htm
レスありがとうございました。

> 当方のWinXP環境で試してみましたが、exeファイルから呼び出した場合に、
> 実行中のプロジェクトが参照され、期待通りにデバッグできています。
>
>
> 確認ですが、「プロジェクト プロパティ」の『コンポーネント』タブにて、
> “バージョン間の互換性”の設定は何になっていますか?
> (この部分が設定されていないと、exeからはデバッグできないと思います)

「互換なし」でした(^^;
ちなみに、仰せの通り互換の設定をしたところ、望みどおりできました!

ありがとうございます。

> あるいは……もしかして、SxS されていませんか?
>
> たとえば、Project1.exe.manifest ファイルにて、
> <file name="ComTest_1_0.dll">
> <comClass
> clsid="{F199BE33-9D65-434D-B288-1A8CF264CF3B}"
> progid="ComTest.ComClass" />
> </file>
> のような記述がされていた場合、「実行中のプロジェクト」ではなく、
> 「同一フォルダのComTest_1_0.dll」の方が呼び出されてしまいますけれども。

こういう話は初めて目にしました。
後学のためにお教えいただきたいのですが、「SxSする」というのは通称
なのでしょうか?

ちょっとぐぐって見て、分からなければ別スレとして立ててみます。
その時はまた・・お相手頂ければ・・幸いです。

>>どなたか、DLLのデバッグの仕方について解説しているサイトなどご存知でし
>>たらお教え頂けませんでしょうか。
> このあたりしか知りません。m(_ _)m
>
> http://www.microsoft.com/japan/developer/library/VBCon98/vbconcreatingtestprojectforinprocesscomponent.htm
> http://www.microsoft.com/japan/developer/library/VBCon98/vbcontestingdebuggingoleservers.htm

・・・探せませんでした(((^^;
ありがたく参考にさせて頂きます。
解決済み!
  • 題名: Re[3]: DLLのデバッグについて
  • 著者: 魔界の仮面弁士
  • 日時: 2005/09/02 11:20:10
  • ID: 12604
  • この記事の返信元:
  • この記事への返信:
    • (なし)
  • ツリーを表示
# 一応、[解決済み]扱いでリプライしておこう。

>>あるいは……もしかして、SxS されていませんか?
> こういう話は初めて目にしました。
> 後学のためにお教えいただきたいのですが、「SxSする」というのは通称
> なのでしょうか?
失礼しました。これはサイドバイサイド(Side-by-side)のことを指しています。

> ちょっとぐぐって見て、分からなければ別スレとして立ててみます。
一応、補足までに。

http://www.microsoft.com/japan/msdn/windows/windows2000/sidebyside.asp
http://www.microsoft.com/japan/msdn/thisweek/vbxp/vbxp2.asp
http://www.microsoft.com/japan/msdn/windows/windowsxp/sidexsidewinxp.asp


>>>どなたか、DLLのデバッグの仕方について解説しているサイトなどご存知でし
>>>たらお教え頂けませんでしょうか。
>>http://www.microsoft.com/japan/developer/library/VBCon98/vbconcreatingtestprojectforinprocesscomponent.htm
>>http://www.microsoft.com/japan/developer/library/VBCon98/vbcontestingdebuggingoleservers.htm
> ・・・探せませんでした(((^^;

でもこれ、ヘルプファイルの内容そのままですよ。(^^;
Webで見るより、ローカルの MSDN Library を参照した方が便利かも。

[Visual Studio 6.0 ドキュメント]
└[Visual Basic ドキュメント]
 └[Visual Basic の使用方法]
  └[コンポーネント ツール ガイド]
   └[ActiveX コンポーネントの作成方法]
    └[コンポーネントのデバッグ、テスト、配置]
     └[ActiveX コンポーネントのテストおよびデバッグ]
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板