System.ComponentModel.Win32Exception (0x80004005):拒绝访问。——解决办法

2023-05-13 02:30:55 浏览数 (1)

1、问题

2、背景

安装visual studio调试代码,觉得IIS 10.0 Express不方便,想直接用IIS

IIS安装,powershell一句命令搞定:

代码语言:javascript复制
Get-WindowsFeature -Name NET-*, Web-* | where {$_.Name -notmatch "Ftp|Web-Application-Proxy"} | Install-WindowsFeature

安装好后,在把调试器从IIS 10.0 Express换为IIS后进行调试,报这个错:

异常详细信息: System.ComponentModel.Win32Exception: 拒绝访问。

源错误:

执行当前 Web 请求期间生成了未经处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。

堆栈跟踪:

[Win32Exception (0x80004005): 拒绝访问。] [ExternalException (0x80004005): 无法执行程序。所执行的命令为 "C:UsersAdministratorsourcereposWebApplication1WebApplication1binroslyncsc.exe" /shared /keepalive:"10" /noconfig /fullpaths @"C:WindowsMicrosoft.NETFramework64v4.0.30319Temporary ASP.NET Fileswebapplication1d09c914a5619c95dze5whpfc.cmdline"。]

三、解决方案:

https://www.cnblogs.com/wuln/p/9049827.html

https://cloud.tencent.com/developer/article/old/1845803

2个文档结合了下

1、给“Temp目录”和“C:WindowsMicrosoft.NETFramework64v4.0.30319Temporary ASP.NET Files目录”权限

代码语言:javascript复制
≥2012R2一般加这些用户的权限Users;NETWORK SERVICE;IIS_IUSRS;IUSR;Everyone;Authenticated Users
还有,c:windowstemp文件夹的也得增加上述权限。

2、调整应用程序池的权限,具体如下:

打开IIS管理器->选中需要调整的应用程序池->右键选择高级设置->设置【进程模型】中的“标识”->选择自定义账户后进入设置->输入管理员账号和密码->确定

0 人点赞