Freigeben über


Just-In-Time-Debuggen

Aktualisiert: November 2007

Dieses Thema gilt für folgende Anwendungsbereiche:

Edition

Visual Basic

C#

C++

Web Developer

Express

Standard

Pro und Team

Tabellenlegende:

Vorhanden

Nicht vorhanden

Befehl oder Befehle, die standardmäßig ausgeblendet sind.

Just-In-Time-Debuggen ist ein Feature, das den Visual Studio-Debugger automatisch startet, wenn in einem Programm, das außerhalb von Visual Studio ausgeführt wird, ein schwerwiegender Fehler auftritt. Just-In-Time-Debuggen gibt Ihnen die Möglichkeit, den Fehler zu untersuchen, bevor die Anwendung vom Betriebssystem beendet wird. Der Visual Studio-Debugger muss nicht ausgeführt werden, wenn der Fehler auftritt.

Falls ein Fehler auftritt, während Just-In-Time-Debuggen aktiviert ist, wird ein Dialogfeld geöffnet. Sie werden gefragt, ob Sie das Programm debuggen möchten und welchen Debugger Sie dazu verwenden möchten.

Wenn ein Programm, das als ein anderer Benutzer ausgeführt wird, auf einen schwerwiegenden Fehler trifft, wird ein Dialogfeld mit einer Sicherheitswarnung angezeigt, bevor der Debugger startet. Weitere Informationen finden Sie unter Sicherheitswarnung: Das Anfügen an einen Prozess, der zu einem nicht vertrauenswürdigen Benutzer gehört, kann ein Sicherheitsrisiko darstellen. Wenn die folgenden Informationen verdächtig erscheinen, oder wenn Sie sich nicht sicher sind, fügen Sie nichts an diesen Prozess an..

Sie können Just-In-Time-Debuggen im Dialogfeld Optionen aktivieren. Weitere Informationen finden Sie unter Gewusst wie: Aktivieren/Deaktivieren von Just-In-Time-Debuggen.

Für Windows Forms müssen Sie zusätzlich Just-In-Time-Debuggen in der Datei machine.config oder in der Datei application.exe.config aktivieren. Weitere Informationen finden Sie unter Gewusst wie: Aktivieren des Just-In-Time-Debuggens für Windows Forms.

Nach der Installation von Visual Studio auf dem Server wird bei Auftreten einer unbehandelten Ausnahme standardmäßig ein interaktives Dialogfeld Ausnahme angezeigt, in dem der Benutzer angibt, ob das Just-In-Time-Debuggen gestartet oder ob die Ausnahme ignoriert werden soll. Dies ist bei unbeaufsichtigtem Betrieb möglicherweise unerwünscht. Wenn der Server so konfiguriert werden soll, dass beim Auftreten einer unbehandelten Ausnahme kein Dialogfeld mehr angezeigt wird (Standardverhalten vor dem Installieren von Visual Studio), löschen Sie im Registrierungs-Editor die folgenden Registrierungsschlüssel:

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug\Debugger

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\DbgManagedDebugger

Löschen Sie in einem 64-Bit-Betriebssystem auch die folgenden Registrierungsschlüssel:

  • HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\AeDebug\Debugger

  • HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\DbgManagedDebugger

Hinweis:

Just-In-Time-Debuggen funktioniert nicht bei verwaltetem Code, der in einer systemeigenen Anwendung gehostet wird, z. B. Schnellansichten.

Hinweis:

Nach der Installation von .NET Framework unter Windows Server 2003 oder unter Windows 2000 SP3 (oder höher) funktioniert Just-In-Time-Debuggen für einen in einer Terminaldienstsitzung unter einem eingeschränkten Benutzerkonto ausgeführten Prozess erst nach einem Neustart des Computers.

Siehe auch

Konzepte

Debuggersicherheit

Referenz

Just-In-Time, Debuggen, Dialogfeld "Optionen"

Sicherheitswarnung: Das Anfügen an einen Prozess, der zu einem nicht vertrauenswürdigen Benutzer gehört, kann ein Sicherheitsrisiko darstellen. Wenn die folgenden Informationen verdächtig erscheinen, oder wenn Sie sich nicht sicher sind, fügen Sie nichts an diesen Prozess an.

Weitere Ressourcen

Debuggerwegweiser