Окно Just-In-Time отладчика Visual Studio появляется в случайно выбранной сессии RDP

На сервере Windows Server 2008 R2 с установленными службами удаленных рабочих столов и несколькими пользователями, вошедшими в систему, окно отладчика Visual Studio Just-In-Time может появляться в любом сеансе RDP, не обязательно в сеансе, действия которого вызвали ошибку.

Ошибки возникают в приложении Classic ASP, которое использует устаревший COM-объект VB6 и базу данных SQL Server. Кажется, что ошибка в w3wp.exe процесс не знает, какой сеанс браузера пользователя RDP инициировал действия, приводящие к ошибке, поэтому он случайным образом выбирает сеанс RDP, в котором появляется окно JIT Debugger. Когда отображается диалоговое окно, приложение Classic ASP останавливается для всех, независимо от того, в каком сеансе RDP они находятся или имеют ли они удаленный доступ к приложению. Что еще хуже, окно имеет тенденцию появляться под активными окнами пользователя. Чтобы выйти из этой ситуации, нужно попросить каждого, у кого есть сеанс RDP на компьютере, найти окно JIT Debugger и отменить его.

Есть ли способ заставить окно JIT Debugger появляться в сеансе RDP конкретного пользователя - предпочтительно в сеансе пользователя, который хочет отладить процесс?

1 ответ

Как на терминальном сервере, так и на рабочем сервере, удалите Visual Studio.

JIT Debugger устанавливает itselft при запуске Visual Studio.

Я настоятельно рекомендую использовать локальный компьютер для ваших нужд кодирования, так как JIT нужны окна консоли.

Включение или отключение отладки Just-In-Time

Вы можете включить или отключить отладку Just-In-Time из диалогового окна Options. Чтобы включить или отключить отладку Just-In-Time

On the Tools menu, click Options.

In the Options dialog box, select the Debugging folder.

In the Debugging folder, select the Just-In-Time page.

In the Enable Just-In-Time debugging of these types of code box, select or clear the relevant program types: Managed, Native, or

Сценарий.

To disable Just-In-Time debugging, once it has been enabled, you must be running with Administrator privileges. Enabling Just-In-Time

отладка устанавливает раздел реестра, и для изменения этого ключа требуются права администратора.

Click OK.

По умолчанию приложения Windows Forms имеют обработчик исключений верхнего уровня, который позволяет программе продолжать работу, если она может восстановиться. В результате необходимо выполнить следующие дополнительные шаги, чтобы включить отладку Just-In-Time приложения Windows Forms. Включение отладки Just-In-Time формы Windows

Set the jitDebugging value to true in the in the system.windows.form section of the machine.config or

файл application.exe.config:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

In a C++ Windows Form application, you must also set DebuggableAttribute in a .config file or in your code. If you compile

with /Zi and without /Og, the compiler sets this attribute for you. If you want to debug a non-optimized release build, however, you must set this yourself. You can do this by adding the following line to your the AssemblyInfo.cpp file of your application:

[assembly:System::Diagnostics::DebuggableAttribute(true, true)]; 

For more information, see DebuggableAttribute.

Just-In-Time debugging may still be enabled even if Visual Studio is no longer installed on your computer. When Visual Studio is not installed, you cannot disable Just-In-Time debugging from the Visual Studio Options dialog box. In that case, you can disable Just-In-Time debugging by editing the Windows registry. To disable Just-In-Time debugging by editing the registry

In the Start menu, click Run.

In the Run dialog box, type regedit, then click OK.

In the Registry Editor window, locate and delete the follow registry keys:

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

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\DbgManagedDebugger

If your computer is running a 64-bit operating system, delete the following registry keys also:

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

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

Take care not to accidentally delete or change any other registry keys.

Close the Registy Editor window.

Just-In-Time debugging errors

You might see the following error messages that are associated with Just-In-Time debugging.

An unhandled win32 exception occurred in <program>. Just-In-Time debugging this exception failed with the following error: The logged

in user did not have access to debug the crashing application.

This message indicates that Just-In-Time debugging failed because you do not have proper access permissions. For information on the

required permissions, see [Obsolete] Remote Debugging Permissions.

Unable to attach to the crashing process. The specified program is not a Windows or MS-DOS program.

This error occurs when you try to attach to a process running as another user under Windows 2000.

To work around this problem, start Visual Studio, open the Attach to Process dialog box from the Debug menu, and find the process you

want to debug in the Available Processes list. If you do not know the name of the process, look at the Visual Studio Just-In-Time Debugger dialog and note the process ID. Select the process in the Available Processes list and click Attach. In the Visual Studio Just-In-Time Debugger dialog, click No to dismiss the dialog box.

Debugger could not be started because no user is logged on.

This error occurs when Just-In-Time debugging tries to start Visual Studio on a machine where there is no user logged onto the

приставка. Because no user is logged on, there is no user session to display the Just-In-Time debugging dialog box.

To fix this problem, log onto the machine.

Class not registered.

This error indicates that the debugger tried to create a COM class that is not registered, probably due to an installation problem.

To fix this problem, use the setup disk to reinstall or repair your Visual Studio installation.

From: https://msdn.microsoft.com/library/5hs4b7a6%28v=vs.100%29.aspx

Другие вопросы по тегам