Office Project のデバッグ
、Visual Studio の他のプロジェクトに使用するのと同じMicrosoft Visual Studio ツールを使用してOfficeプロジェクトをデバッグできます。ブレークポイントを挿入、[ローカル] のウィンドウの変数を表示する機能などVisual Studio のデバッガー機能は、Officeプロジェクトのデバッグ時にも使用できます。Visual Studio のデバッグ ツールの詳細については、「Visual Studio でのデバッグ」を参照してください。
ヒント |
---|
アプリケーションをビルドしてデバッグするには、デバッグを簡単にするために、Officeアプリケーションの開いているインスタンスを閉じます。 |
対象: このトピックの情報は、Office 2013 および Office 2010 のドキュメント レベルのプロジェクトおよびアプリケーション レベルのプロジェクトに適用されます。詳細については、「Office アプリケーションおよびプロジェクト タイプ別の使用可能な機能」を参照してください。
関連のビデオ デモについては、「How Do I: Debug a VSTO Application? (操作方法: VSTO アプリケーションをデバッグする)」を参照してください。
デバッガーの起動と停止
開始します Visual Studio の他のプロジェクトのデバッグなど、Officeプロジェクトのデバッグを開始します; たとえば、F5キーを押すこともできます。アプリケーション レベルのアドイン プロジェクトのデバッグを開始すると、対象Officeアプリケーションの新しいプロセスが開始され、アドインが読み込まれます。新しいWordまたはExcelプロセスのドキュメント レベルのプロジェクト、文書またはブックを開きますのデバッグを開始するとき。
デバッガーを停止すると、アプリケーション プロセスが即座に停止されます。また、デバッガーをデタッチするように設定してある場合にはデバッガーがデタッチされます。終了したOfficeアプリケーション プロセスで開く他のドキュメントはすべて、警告、保存されていない変更せずに失われます閉じられます。これには、デバッガーの実行中に開かれた文書やブックもすべて含まれます。
通常、デバッガーを停止する前にプロセスからデタッチする方が適切です。通常の方法でOfficeアプリケーションを終了できるようにします。デバッガーを停止した後も開いている文書またはワークシートを使用する場合は、プロセスからデタッチすることもできます。プロセスからのデタッチの詳細については、「方法 : すべてのプロセスをデタッチする」を参照してください。
繰り返し停止するWord用のドキュメント レベルのカスタマイズを、デバッガーとデバッグを閉じることがある単語が破損すると、Normalテンプレートになる場合があります。その場合は壊れた Normal テンプレートを削除します。テンプレートは、Word を次に開いたときに自動的に再作成されます。ただし、Normal テンプレートに格納されていたマクロは再作成されません。
F10 および F11 キーの動作
Office プロジェクトのデバッグ開始における F10 および F11 キーの動作は、他の Visual Basic または C# プロジェクトのデバッグ開始の場合と同じではありません。Visual Basic や C# のプロジェクトの場合、デバッガーはメイン関数で停止しますが、Office プロジェクトの場合、Visual Studio では Office アプリケーションのメイン関数に対する制御権がありません。ただし、デバッグ実行中の F10 および F11 キーの機能は、Visual Basic および C# のプロジェクトの場合と同じです。
例外の表示
Visual Studio では、マネージ コードによるアンマネージ コードの操作方法が原因で、Microsoft Office アプリケーションからスローされたエラーは表示されません。Visual StudioのOffice開発ツールを使用して作成したアドインが例外をスローした場合、たとえば、Microsoft Officeアプリケーションがエラーを表示せずに従います。これらのエラーを表示するには、デバッガーが共通言語ランタイムの例外で中断されるように設定します。詳細については、「方法 : 例外がスローされたときに中断する」を参照してください。
デバッガーに設定すると、共通言語ランタイム例外で中断すると、すべての例外で中断、およびプロジェクトに関連する可能性があるランタイムからのいくつかの初回例外自体処理したものも含めて。どのプロジェクトでも、不明な msosec を参照するエラーが表示されますが、これは無視してもかまいません。このような msosec 例外はソリューションに影響しません。
メソッドの周囲で Try...Catch ステートメントを使用して、例外をキャッチすることもできます。
既定では、Visual Studio で Office プロジェクトの Just-In-Time デバッグ エラーも表示されませんが、発生したエラーを表示できるように、この機能を有効にすることができます。詳細については、「Just-In-Time デバッグ」を参照してください。
コマンド ライン引数
[デバッグ] プロパティ ページの [開始動作] が [スタート プロジェクト] に設定されている場合、Visual Studio ではプロジェクトのデバッグ時にコマンド ライン引数を使用しません。起動オプションでコマンド ライン引数を指定した場合でも同様です。デバッグの開始時にコマンド ライン引数を使用するには、[開始動作] を [スタート プロジェクト] 以外に設定する必要があります。
ソース管理
デバッグ プロパティは、ソース管理で複数のユーザー間では共有されません。Visual Basicと、Cのプロジェクトはユーザー固有のファイルにデバッグ プロパティを ([プロジェクト名]の.vbproj.userまたは.csproj.user) の [プロジェクト名]格納し、このファイルはソース管理で管理されません。複数のユーザーがデバッグを実行する場合は、各自が手動でデバッグ プロパティを入力する必要があります。
ドキュメント レベルのプロジェクトのキャッシュされたデータセットのデバッグ
プロジェクトをビルドするたびに、データセットは空になり、再作成されます。キャッシュされたデータセットをデバッグする場合は、Visual Studio の外部で文書を開いてからデバッガーをアタッチする必要があります。
Word 97 ~ Word 2003 の文書 (*.doc) 形式に基づく Word 文書プロジェクトのデバッグ
Word 97 ~ Word 2003 の文書 (*.doc) 形式に基づく Word 文書プロジェクトをデバッグするには、信頼できるフォルダー一覧にプロジェクト フォルダーを追加する必要があります。この方法の詳細に ドキュメントへの信頼の付与を参照してください。
無効化されたアドインのデバッグ
Microsoft Office アプリケーションでは、予期しない動作を行うアドインを無効にする場合があります。Microsoft Office アプリケーションは、起動するたびに問題のあるコードが読み込まれないようにするため、アドインを無効にします。しかし、通常のデバッグ時に、予期しない動作が発生することはよくあります。アドインを再び有効にする方法の詳細については、「方法 : 無効にされたアドインを再度有効にする」を参照してください。
Microsoft Office アプリケーションでアドインに適用される無効化には、ハードな無効化とソフトな無効化の 2 種類があります。
ハードな無効化
ハードな無効化は、アドインによってアプリケーションが予期せずに終了した場合に発生する可能性があります。また、開発用コンピューターでアドインの Startup イベント ハンドラーの実行中にデバッガーを停止した場合にも発生することがあります。アドインがハードに無効化されると、そのアドインがアプリケーションの [使用できないアイテム] ボックスの一覧に表示されます。
Office アプリケーションが Visual Studio の Office 開発ツールを使用して作成されたアドインをハードに無効化する場合、このアプリケーションは、エラーの原因となったアドインのみを無効化します。Visual Studio の Office 開発ツールを使用してその Office アプリケーション用に作成されたその他のアドインの読み込みは続行されます。
ソフトな無効化
ソフトな無効化は、アドインによってエラーが発生したが、アプリケーションが予期せずに終了しなかった場合に発生する可能性があります。たとえば、Startup イベント ハンドラーの実行中にアドインによってハンドルされない例外がスローされた場合に、アプリケーションによってそのアドインがソフトに無効化されることがあります。アドインがソフトに無効化されると、そのアドインがアプリケーションの [アクティブでないアプリケーション アドイン] ボックスの一覧に表示され、アンロードされていないことを示すために、そのアドインの LoadBehavior レジストリ エントリの値が変更されます。LoadBehavior レジストリ エントリの詳細については、「アプリケーション レベルのアドインのレジストリ エントリ」を参照してください。
イベント ビューアーを使用したインストールのエラーのトラブルシューティング
Office ソリューションのインストール時またはアンインストール時にスローされたすべての例外のメッセージは、Visual Studio Tools for Office Runtime によって Windows のイベント ビューアーに書き込まれます。これらのメッセージを使用して、インストールと配置の問題を解決できます。
ログ ファイルおよびエラー メッセージを使用したスタートアップのエラーのトラブルシューティング
Visual Studio Tools for Office Runtime では、起動時に発生するすべてのエラーをログ ファイルに書き込んだり、エラーが発生するたびにメッセージ ボックスに表示したりできます。既定では、これらのオプションはオフになっています。オプションを有効にするには、環境変数を作成します。
エラーが発生するたびにメッセージ ボックスに表示するには、VSTO_SUPPRESSDISPLAYALERTS という環境変数を作成し、0 (ゼロ) に設定します。メッセージが表示されないようにするには、環境変数を削除するか、1 に設定します。
エラーをログ ファイルに書き込むには、VSTO_LOGALERTS という環境変数を作成し、1 に設定します。Visual Studio Tools for Office Runtime は、アドインの配置マニフェストを含む、またはカスタマイズに関連付けられたブックまたは文書を含むフォルダーにログ ファイルのフォルダーを作成します。失敗した場合、Visual Studio Tools for Office Runtime は、ローカルの%TEMP%フォルダーにログ ファイルが作成されます。アプリケーション レベルのアドインで、既定の名前が アドインの名前.vsto.logです。ドキュメント レベルのプロジェクトの場合、ログ ファイルの名前は ドキュメント名です。ExcelWorkbook1.xlsx.logなどの拡張機能、.log。エラーのログ記録を停止するには、この環境変数を 0 (ゼロ) に設定します。