次の方法で共有


Debugger.DetachAll メソッド

更新 : 2007 年 11 月

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

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

構文

'宣言
Sub DetachAll
'使用
Dim instance As Debugger

instance.DetachAll()
void DetachAll()
void DetachAll()
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

アクセス許可

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

参照

参照

Debugger インターフェイス

Debugger メンバ

EnvDTE 名前空間