2013-12-12 4 views
5

In einer relativ neuen Installation von Windows Server 2008 R2 gibt es gelegentlich Popup-Meldungen zu Just-in-Time-Debugging. Diese können beispielsweise in w3wp.exe auftreten, wenn ein Such-Bot auf eine ASP-Seite zugreift. Diese Nachrichten sind lokale Windows-Popups, nicht in Browsern.Wie deaktivieren Sie Just-in-Time-Debugging-Nachrichten?

Ich kann "just-in-time" jedoch nicht debuggen, da es keine Debugger auf dem Server gibt und auch nie gab. Microsoft ist so nett zu sagen, dass ich keine VS2010-Lizenz zum Debuggen habe, wenn ich auf debug klicken. Dies macht die Popup-Nachrichten ziemlich unbrauchbar, insbesondere da sie keine echten Informationen enthalten und die Informationen, die den Fehler verursachen, allgemein in den Protokollen enthalten sind.

Nach this link und this SO question, deaktivierte ich die AeDebug \ Debugger-Schlüssel, und die DbgManagedDebugger Schlüssel nicht vorhanden. Dies hatte keine Auswirkungen auf die Fehlermeldungen.

Wie kann ich diese Just-in-Time Debugging Popup-Nachrichten deaktivieren?

enter image description here

+0

Es ist auch [ein ähnlicher Eintrag, über auf Server Fault] (http://serverfault.com/q/558550/54658), vielleicht das hilft auch jemandem. –

Antwort

5

Es ist definitiv die AeDebug \ Debugger Schlüssel, klingt wie Sie nicht das „deaktivieren“ es richtig oder mit Blick auf die 32-Bit-Version des Schlüssels.

Das Löschen von vsjitdebugger.exe aus den Verzeichnissen c: \ windows \ syswow64 und system32 sollte den Dialog ebenfalls entfernen. Das ist das Programm, das diesen Dialog anzeigt und im AeDebug-Schlüssel referenziert wird.

Ziehen Sie auch in Betracht, Visual Studio zu deinstallieren, da Sie keine Verwendung dafür haben.

+0

Danke für die Hilfe! – xpda

+0

Ich habe das versucht, und auf Win2012 Server hat es nicht gelöst! Ich habe eine Lösung für einen anderen SO-Thread gefunden (tatsächlich habe ich die Lösung für einen anderen SO-Thread geschrieben ...) – Jonesome

4

diese Powershell-Anweisungen Führen Sie den JIT-Debugger zu deaktivieren:

Remove-itemproperty -Path "HKLM:SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug" -Name "Debugger" 
Remove-itemproperty -Path "HKLM:SOFTWARE\Microsoft\.NETFramework" -Name "DbgManagedDebugger" 
Remove-itemproperty -Path "HKLM:SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\AeDebug" -Name "Debugger" 
Remove-itemproperty -Path "HKLM:SOFTWARE\Wow6432Node\Microsoft\.NETFramework" -Name "DbgManagedDebugger" 
+0

Setzen Sie diese Werte auf 1: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ .NETFramework \ DbgJITDebugLaunchSetting und HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ .NETFramework – xpda

+0

So weit ich sehen konnte, sollte es ausreichen, beide DbgJITDebugLaunchSetting-Werte auf 1 festzulegen. Dies führt zu einem Stapelspeicherauszug, nach dem der Prozess beendet wird. Siehe https://msdn.microsoft.com/en-us/library/2ac5yxx6%28VS.80%29.aspx – needfulthing