VC PlusPlus:DLLのデバッグ親の実行ファイル*.exeから呼び出されるタイプWindows10 64bit
VC Cpp記事に戻る。
概要
DLLが親の実行ファイル(*.exe)から呼び出されるタイプのデバッグ方法についての記事です。
いわゆる、プラグイン開発なんかが該当します。*.dllや*.vst3を指定のディレクトリに配置して、DAWのようなプラグインを読み込み、呼び出すようなものです。
このWikiの関連記事で作ったサンプルをDLLをデバッグする手順を示します。デバッグには大きく分けて2種類あります。俺がやるデバッグか、俺がいないデバッグか。ローランドさんの鉄板ですね。
- アタッチする。
- 実行ファイルを指定する。
の2種類でした。
1.VC PlusPlus:LIB/DLLの生成とLIB呼び出し、DLL呼び出しについての記事をできれば理解しつつ、記事の下の方にあるサンプルを入手します。
2.3つのソリューションそれぞれのプロジェクトをビルドします。CppDLLを最後にビルドしましょう。
3.CppDLLソリューションプロジェクトの中のdllmain.cppの6行目にブレークポイントを設定します。
4.CppLoadDLLソリューションの中の\\x64x\\Debug\\CppLoadDLL.exeを起動します。入力待ちになります。起動して止まっているところで、Visual Studioの画面に戻ります。
5.Visual Studioのメニュー[デバッグ]-[プロセスにアタッチ]を選択します。
6.Visual Studioがデバッグの画面に遷移します。性能のよいPCならすぐに次の手順に行っても問題ないのでしょうけれど、遅いPCはデバッグの画面への遷移が落ち着くまで待った方が良いでしょう。
7.実行中だったCppLoadDLL.exeのコマンド画面に戻り、数字を入力してEnterキーを押します。
8.これでブレークポイントを設定したdllmain.cppの6行目で実行が止まります。
9.Dll側のプログラムが一行なので、特にデバッグでやりたいこともないでしょうから、続行で終わらせてもよいでしょう。F5キーですね。ツールバーの緑の再生アイコンの[続行]でもいいです。
10.はい。プログラムが進んでデバッグ終了です。以上がデバッグの手順です。
VC Cpp記事に戻る。