チュートリアル : アドイン プロジェクトのデバッグ
更新 : 2007 年 11 月
このチュートリアルでは、簡単な Visual Studio アドイン プロジェクトを作成し、ブレークポイントを使ってプロジェクトをデバッグする方法について説明します。詳細については、「ブレークポイントとトレースポイント」を参照してください。
アドインは、Visual Studio オートメーション オブジェクト モデルを使って統合開発環境 (IDE: Integrated Development Environment) を操作または自動化する、コンパイル済みアプリケーションです。詳細については、「アドインおよびウィザードの作成」を参照してください。
メモ : |
---|
使用している設定またはエディションによっては、表示されるダイアログ ボックスやメニュー コマンドがヘルプに記載されている内容と異なる場合があります。ここに記載されている手順は、全般的な開発設定が適用されているものとして記述されています。設定を変更するには、[ツール] メニューの [設定のインポートとエクスポート] をクリックします。詳細については、「Visual Studio の設定」を参照してください。 |
簡単な Visual Studio アドイン プロジェクトを作成するには
[ファイル] メニューの [新規作成] をポイントし、[プロジェクト] をクリックします。
[新しいプロジェクト] ダイアログ ボックスが表示されます。
プロジェクトの種類 ペインで [その他のプロジェクトの種類] を展開し、[機能拡張] を選択します。
[テンプレート] ペインで、[Visual Studio アドイン] を選択します。
[プロジェクト名] フィールドに、アドイン プロジェクトの名前として「SimpleAddIn」と入力します。[OK] をクリックします。
[アドイン ウィザードへようこそ] ページで、[次へ] をクリックします。
[プログラミング言語の選択] ページで、[Visual C# を使用してアドインを作成] をクリックし、[次へ] をクリックします。
[アプリケーション ホストの選択] ページで、既定のオプションを受け入れ、[次へ] をクリックします。
[名前および説明の入力] ページで、アドインの名前と説明をそれぞれ、「Simple Add-in」および「Used to illustrate how to debug a simple Add-in.」のように入力し、[次へ] をクリックします。
[アドイン オプションを選択します。] ページで、[[ツール] メニュー項目を作成する] をクリックします。それ以外は、既定の設定をそのまま使用します。[次へ] をクリックします。
[[バージョン情報] に関する情報を選択します。] ページで、[[バージョン情報] ボックスの情報を指定する] オプションを選択し、[次へ] をクリックします。
[概要]] ページで、[完了] をクリックします。
アドイン ウィザードによって新しいアドイン プロジェクトが生成され、Connect.cs ファイル上にフォーカスを移した IDE が開かれます。これが、アドイン用のコードを格納するメイン クラスになります。
ソリューション エクスプローラで [参照設定] ノードを右クリックし、[参照の追加] を選択して、アセンブリに参照を追加します。
これにより、System.Windows.Forms 名前空間の一連の型を使用できるようになります。
[参照の追加] ダイアログ ボックスが表示されます。
[.NET] タブで、コンポーネント System.Windows.Forms.dll をダブルクリックします。
ソリューション エクスプローラの [参照設定] ノードに、System.Windows.Forms 名前空間の参照が表示されます。
次のコード例では、メッセージ ボックスが使用されています。この名前空間には、このメッセージ ボックスを表示するために必要なコードが存在します。
MessageBox オブジェクトを容易に扱うことができるように、Connect.cs で、SimpleAddIn スコープの上付近に次のステートメントを追加します。
using System.Windows.Forms;
Connect.cs で、MessageBox.Show("Debugging a Simple Add-in"); を Exec メソッドに追加して、MessageBox オブジェクトをアドインに追加します。
public void Exec(string commandName, vsCommandExecOption executeOption, ref object varIn, ref object varOut, ref bool handled) { handled = false; if(executeOption == vsCommandExecOption.vsCommandExecOptionDoDefault) { if(commandName == "MyAddin1.Connect.MyAddin1") { handled = true; MessageBox.Show("Debugging a Simple Add-in"); return; } } }
[すべてを保存] をクリックして作業内容を保存します。
Visual Studio アドイン プロジェクトをデバッグするには
Connect.cs で、次のステートメントの左端のマージンをクリックします。
MessageBox.Show("Debugging a Simple Add-in")
赤い点 (ブレークポイント) が表示され、その行のテキストが赤く強調表示されます。
[デバッグ] メニューの [デバッグ開始] をクリックします。
現在の Visual Studio セッション (デバッガ セッション) がフォーカスを失い、デバッグ対象のプログラムが Visual Studio の別のインスタンスで表示されます。
デバッグされる側の Visual Studio IDE で、[ツール] メニューをクリックします。
メニュー項目の先頭に SimpleAddIn が表示されます。
[SimpleAddIn] コマンドを選択して、アドインを実行します。
これにより、Visual Studio のデバッガ セッションにおいて、ブレークポイントの設定されている行で処理が中断され、その行が黄色でハイライトされます。
デバッガ セッション側で、[デバッグ] メニューの [ステップ イン] を選択します。
デバッグ対象のプログラムにフォーカスが戻ります。アドインが実行されたことを示すメッセージ ボックスが表示されます。
[OK] をクリックしてメッセージ ボックスを閉じます。
デバッガ セッション側で、[デバッグ] メニューの [続行] をクリックします。
デバッグされる側の Visual Studio セッションに再びフォーカスが移ります。
デバッグされる側の Visual Studio セッションを終了します。
Connect.cs で、MessageBox ステートメントの横に設定したブレークポイントをクリックし、ソース コードから削除します。
実際にアドインをデバッグしてみると、実行中のアドインをホストするための、Visual Studio IDE のインスタンスがもう 1 つ起動することがわかります。最初のインスタンスに表示されているコードを使って、ウォッチ変数やブレークポイントの設定などのデバッグ作業を行うことができます。デバッグが完了すると、IDE の 2 つ目のインスタンスが終了し、1 つ目のインスタンスのアドイン コードにフォーカスが移ります。