Как стандартная идентификация AppPool может иметь разрешение для открытия окна отладчика - PullRequest
1 голос
/ 13 июня 2011

Я пытался добавить

System.Diagnostics.Debugger.Launch();

к моему коду сайта IIS ASP.NET. Я запускаю приложение как стандартный пользователь AppPoolIdentity, и оно открывает окно отладки, где я могу выбрать присоединение VS2010 и отладку процесса. У меня вопрос: что позволяет пользователю AppPoolIdentity (виртуальному) взаимодействовать с моим рабочим столом? Обычно это не разрешено. Это было проверено на Windows 7 x64.

Спасибо!

Ответы [ 2 ]

1 голос
/ 14 июня 2011

Когда возникает необработанное исключение, в реестре выполняется проверка, чтобы увидеть, какой отладчик указан в списке.

32-битные системы используют: KEY_LOCAL_MACHINE \ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ \ Microsoft \ Windows NT \ CurrentVersion \ AeDebug \ Debugger

Это также может быть источником уязвимости безопасности - см. http://support.microsoft.com/kb/923827

для получения подробной информации о разделе реестра AEDebug см .: http://msdn.microsoft.com/en-us/library/5hs4b7a6.aspx

Идентификатор пула приложений не взаимодействует с вашим рабочим столом - запрос отладчика. Ничто не «взаимодействовало», пока вы не решите отладить, тогда отладчик запускается, и вы присоединяетесь к этому процессу.

0 голосов
/ 13 июня 2011

Самое простое, что нужно сделать - подключить VS к процессу, выбрать IIS. Вы можете установить точку останова в своем приложении, и она остановится на точке останова. Это остановит каждый веб-сайт на вашем компьютере тоже !!!!

Другая вещь, которую вы можете сделать, это установить режим отладки в вашем приложении. По умолчанию это просто мой код. Скажите, чтобы он также отлаживал нативный код.

вот такой вопрос, как у вас Как запустить aspnet_wp.exe без запуска события Application_Start

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...