次の方法で共有


Debugger.DetachAll メソッド

アタッチされたすべてのプログラムからデタッチします。

名前空間:  EnvDTE
アセンブリ:  EnvDTE (EnvDTE.dll 内)

構文

'宣言
Sub DetachAll
void DetachAll()
void DetachAll()
abstract DetachAll : unit -> unit 
function DetachAll()

解説

DetachAll は、アタッチされたすべてのプログラムからのデタッチを試みます。アタッチされているプロセスを 1 つでもデタッチできない場合、この操作は失敗します。詳細については、「方法 : すべてのプロセスをデタッチする」を参照してください。

DetachAll メソッドを使用する方法の例を次に示します。

このメソッドをテストするには

  1. ターゲット アプリケーション コードで無限ループを使用します。

  2. ターゲット アプリケーションをデバッグ モードで実行します。

  3. アドインを実行します。

  4. デバッガーがターゲット アプリケーションからデタッチされます。

public static void DetachAll(DTE dte)
{
    // Setup the debug Output window.
    Window w = (Window)dte.Windows.Item(EnvDTE.Constants.vsWindowKindOutput);
    w.Visible = true;
    OutputWindow ow = (OutputWindow)w.Object;
    OutputWindowPane owp = ow.OutputWindowPanes.Add("DetachAll Method Test");
    owp.Activate();

    dte.Debugger.DetachAll();
    owp.OutputString("Detached all processes.");
}
Shared Sub DetachAll(ByRef dte As EnvDTE.DTE)
    dte.Debugger.DetachAll()
    MessageBox.Show("Detached all processes.", "Debugger Test - DetachAll Test")
End Sub

.NET Framework セキュリティ

  • 直前の呼び出し元に対する完全な信頼。このメンバーは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。

参照

関連項目

Debugger インターフェイス

EnvDTE 名前空間