Just-In-Time调试器在没有必要的安全权限的情况下启动

时间:2011-11-18 17:08:43

标签: visual-studio-2010 asp.net-3.5

我们正在开发vs 2010 Windows 7,32位,项目正在目标框架3.5下运行。

现在我们正在注册页面的网站项目中实施信用卡流程。

从VS IDE运行时运行正常,但在单击注册按钮后发布到本地IIS后,它显示此错误:

  

w3wp.exe中发生了未处理的win32异常。即时   调试器启动时没有必要的安全权限。要调试   在此过程中,JIT调试器必须以管理员身份运行。将   你想调试过程吗?

在应用程序错误日志中看到此

Faulting application name: w3wp.exe, version: 7.5.7600.16385, time stamp: 0x4a5bcd2b
Faulting module name: ntdll.dll, version: 6.1.7600.16385, time stamp: 0x4a5bdadb
Exception code: 0xc0000374
Fault offset: 0x000c283b
Faulting process id: 0x3e4
Faulting application start time: 0x01cca60dbfd76d52
Faulting application path: c:\windows\system32\inetsrv\w3wp.exe
Faulting module path: C:\Windows\SYSTEM32\ntdll.dll
Report Id: 126cc4b9-1201-11e1-b3db-003018a9eb5e

三天前它从IIS工作正常。我不明白导致这个问题的变化是什么。

被修改

如果我选择调试此过程..应用程序正常工作。真正的问题是在将相同版本发布到实时服务器(win 2k8,64 bit)之后,在注册页面中我使用了验证码,即使我输入了正确的代码,也就是说你没有输入正确的代码。这在本地系统中运行良好。

6 个答案:

答案 0 :(得分:28)

我不知道您的问题是否有相同的原因,但在尝试调试我的应用时遇到此错误(只需按F5)。

我们疯狂地试图弄清楚为什么w3wp.exe在它运行正常之前几分钟失败并出现此错误。

经过一番调查后,我们意识到真正的问题出现在global.asax的代码中:它抛出了一个堆栈溢出异常(这里很有讽刺意义)并且在VS可以附加它之前崩溃了w3wp.exe进程开始调试。

修复错误代码使VS再次运行良好。

我看到这个问题很久以前就已存在,但我希望它对某些人有帮助。

答案 1 :(得分:2)

要解决此问题,请让对话框为您提供帮助。同意启动高级调试器并调试您的问题。您可能遇到某种配置问题。你真正的问题不在于调试器是否被提升,而是你需要一个调试器。换句话说,对话框的第一句话是“你有问题”。所有其他句子都是“我想帮助你解决这个问题;对你这么酷吗?”

答案 2 :(得分:0)

如果你经常附加到流程和调试但是你不能(因为你无法让应用程序成功运行),请通过Visual Studio运行应用程序,它会打破并告诉你这个例外原因有些细节。

答案 3 :(得分:0)

我相信最新版本的VS和.NET Core 2.1的更新是导致我这样做的原因。

然后我第一次注意到这个设置。将其设置为“启用”会为我修复它。 enter image description here

答案 4 :(得分:0)

由于与我的网站相关联的AppPool,我遇到了此错误。最初,我使用的是DefaultAppPool。解决方法是使用以NetworkService作为标识的其他应用程序池(自定义,来自我们的应用程序)。

答案 5 :(得分:0)

在我的情况下,这是由于循环依赖注入引起的stackoverflow

public class ServiceA : IServiceA
{
   public ServiceA(IServiceB serviceB){...}
}

public class ServiceB : IServiceB
{
   public ServiceB(IServiceA serviceA){...}
}