概要
VisualStudio.Extensibility Diagnostics Explorer 拡張機能は、開発時に VisualStudio.Extensibility 拡張機能をデバッグできるように設計されています。 この拡張機能の対象ユーザーは拡張機能の作成者であり、拡張機能コンシューマーではありません。 この拡張機能は、他の拡張機能がやり取りする拡張性ポイント、拡張機能がIDEに提供する構成オブジェクト、およびそれらの構成オブジェクトのメタデータを検査するためのインターフェースを提供します。
作業の開始
Diagsnotics Explorer をインストール、起動、および構成するには、次の手順に従います。
拡張機能をインストールする
診断エクスプローラーは、Visual Studio の拡張機能マネージャーから直接取得することも、の Visual Studio Marketplaceから取得することもできます。
手記
VisualStudio.Extensibility Diagnostics Explorer 拡張機能は、Visual Studio 2022 17.12 以降と互換性があります。
Visual Studio で診断エクスプローラーを開く
Visual Studio で診断エクスプローラーを起動するには、[拡張機能] メニュー VisualStudio.Extensibility Diagnostics Explorer を選択します。
診断の収集を有効にする
診断エクスプローラーは、既定で拡張機能から関連する診断データを収集するように構成されています。 このデータ収集を無効または再度有効にする場合は、ツール ウィンドウの左下隅にある [診断 収集を有効にする] チェック ボックスをオンに切り替えることができます。 この設定を変更して有効にするには、Visual Studio を再起動する必要があります。
診断ページ
診断エクスプローラー ツール ウィンドウの左側のパネルには、別の診断ページの一覧が表示されます。 診断ページには、拡張可能な機能と拡張性インフラストラクチャの 2 種類があります。 拡張可能な機能ページは、コマンドなど、Visual Studio 内の特定の拡張可能なコンポーネントに関する診断情報を提供します。 拡張インフラストラクチャ ページでは、拡張機能がプラグインする機能拡張ポイントに関係なく、関連する診断情報が提供されます。 イベント ページ、機能拡張関連イベントのライブ ビューアー、およびアクティブ化の制約を作成するのに役立つ関連 IDE 状態を示す クライアント コンテキスト ページは、2 つの拡張インフラストラクチャ ページです。
拡張可能な機能ページ
拡張可能な機能ページの左上には、その機能領域で さまざまな 拡張ポイントの ComboBox があり、それぞれが拡張機能の構成オブジェクトに直接マップできます。 たとえば、[コマンド] ページには、VisualStudio.Extensibility 拡張機能内で Visual Studio によって検出された各メニューとツールバーを示すための メニューとツールバーの 拡張性ポイント があります。
プロパティが拡張機能で更新されると、データはリアルタイムで更新されます。 たとえば、拡張機能が実行時にそのコマンドの表示名を変更した場合、そのコマンドの 表示名 列のセルに、そのコマンドの新しい表示名がすぐに表示されます。
拡張ポイント ComboBox には、Logという項目もあります。この項目には、これらの更新プログラムのライブ ビューが表示されます。 ComboBox の横にある [すべてクリア] ボタンを使用すると、ビューに現在表示されているすべての行をクリアできます。
拡張機能 ComboBox を使用して、ビュー内の項目をフィルター処理できます。 ComboBoxで「All」を選択すると、インストールされているすべての VisualStudio.Extensibility 拡張機能のデータが表示されます。 この ComboBox を特定の拡張機能の ID に変更すると、その特定の拡張機能に関連する項目のみが表示されます。 この ComboBox の値は、拡張可能な機能ページ間を移動する場合でも保持されます。
DataGrid の一部のセルには、[クリックして展開] が表示されます。 このメッセージは、そのプロパティに関連するメタデータが詳細すぎるため、DataGrid のセルに適切に表示できないことを意味します。 セルをクリックするとモーダル ダイアログが開き、そのセルの実際の値が表示されます。
拡張可能なインフラストラクチャ ページ
[イベント] ページ
イベント ページには、IDE で "何かが起こる" と表示されます。 各イベントは、そのイベントに関連するすべてのプロパティと共に、DataGrid に新しい行として表示されます。 たとえば、コマンドを実行すると、Commands - Executing イベントがビューに表示され、コマンドが属している拡張機能の ID と、実行されたコマンドの ID が表示されます。
イベント ComboBox を使用すると、特定の名前のイベントのみを含むビューをフィルター処理できます。 を選択した場合、すべてのイベントが表示されます。 特定のイベントが選択されている場合、イベントのすべてのプロパティがビューに表示されます。 一部のプロパティは、あまりにも詳細でひとつのセルに収まりきらない場合、[クリックして展開] をクリックして展開する必要があります。
コントラクト ComboBox では、ビューがフィルター処理され、特定の拡張可能な機能に関連するイベントのみが表示されます。 また、Event
ComboBox をフィルター処理して、特定の拡張可能な機能に関連するイベントの名前のみを含みます。
[すべてクリア] ボタンをクリックすると、ビューに現在表示されているすべてのイベントが削除されます。
[イベント] ページの
列の説明
拡張機能 ID
拡張機能 ID 列には、イベントのインスタンスが関連付けられている拡張機能の ID が表示されます。 特定の拡張機能に属していないが、代わりに IDE 全体に適用されるイベントによっては、このセルが空になる可能性があります。
アイテム ID
項目 ID 列には、イベントのインスタンスが関連付けられている拡張項目の ID が表示されます。 たとえば、コマンドの 項目 ID - イベントの実行は、実行されたコマンドの ID になります。
特性
プロパティ 列には、DataGrid の 1 つのセルに表示できるイベントのそのインスタンスに関連するプロパティのセットが表示されます。 より詳細なプロパティは、[詳細情報] ダイアログから表示されるか、または イベント ComboBox を関心のある特定のイベント名に変更することによってのみ表示されます。
詳細情報
[詳細情報] 列には、イベントに関連するより詳細なメタデータが表示されます。 この列のセルをクリックすると、その行で表されるイベントに関連するすべてのメタデータを含むモーダル ダイアログが開きます。
クライアントコンテキストページ
クライアント コンテキスト ページには、IDE 自体に関連するさまざまなプロパティの状態が表示されます。 コンテキスト ComboBox は、クライアント コンテキスト ComboBox で現在選択されている項目に関連するすべてのアクティブ化制約を表示するか、ツール ウィンドウを開いた後にこれらのプロパティが変更されたすべての時間のログを表示するようにビュー内のデータを変更します。 イベント コンテキストが選択されている場合は、[すべての をクリア] ボタンを使用して、ビューに現在表示されているすべてのイベントを削除できます。