プラグインのデバッグ

これまでは、簡単なプラグインを作成していましたので、出来上がったDLLを Becky! のプラグインフォルダにコピーすることでそのまま実行していましたが、実際に大掛かりなプラグインになるとデバッグモードでソースコード上をトレースしながらテストをしなければなりません。

ここでプラグインのデバッグについて説明します。

プロジェクトの出力とデバッグプログラム

Visual Studio プロジェクトの Debug構成のプロパティを開いて、「構成プロパティ」-「全般」のシートで「出力ディレクトリ」を Becky! のプラグインフォルダに変更します。
サンプル環境では、C:\Program Files (x86)\RimArts\B2\Plugins です。

つづいて、「構成プロパティ」-「デバッグ」のシート「コマンド」部分に Becky! の実行ファイルを指定します。
サンプル環境では C:\Program Files (x86)\RimArts\B2\B2.exe です。

これでデバッグ環境が整いました。
プロジェクトをリビルドしてみましょう。
(Becky! は終了させておいてくださいね。)

エラーになってしまいました。

原因は、C:\Program Files 配下のフォルダが通常編集できないように保護されているためです。
DLLを単体でコピーする場合にも、管理者権限でコピーしなければなりませんでしたね。
ということで、プラグイン用フォルダをデバッグしやすいようにセキュリティの設定を行います。

エクスプローラで Becky! のプラグインフォルダを開き、右クリックのコンテキストメニュで「プロパティ」を選択します。

「セキュリティ」タブを開いて「編集」ボタンをクリックします。

「Pluginsのアクセス許可」 画面で「追加」ボタンを押します。

ユーザーまたはグループの選択画面の「選択するオブジェクト名を入力してください」の欄にログインユーザー名を入力し「名前の確認」ボタンを押します。
コンピュータ名とユーザー名が表示されたら「OK」ボタンを押します。

Pluginsのアクセス許可画面に戻り、追加されたユーザー名を選択し、下段の「アクセス許可」の「フル コントロール」の「許可」のチェックボックスをONにして「OK」ボタンで終了します。

再度ビルドしてみましょう。

ビルドできました。
これでプログラムにブレークポイントを貼ってテストできるようになります。

注意事項

デバッグビルドするときは、Becky! を終了させておく必要があります。
そうしないと、DLLファイルを上書きできません。
(よく失敗してしまいます。笑)