EDITBIN给出了LNK1104(无法打开文件)

use*_*564 1 asp.net stack-overflow iis

我试图通过使用以下命令增加32位IIS的堆栈大小

EDITBIN /STACK:1048576 w3wp.exe
Run Code Online (Sandbox Code Playgroud)

但面临以下问题:

fatal error LNK1104: cannot open file w3wp.exe
Run Code Online (Sandbox Code Playgroud)

我检查了windows/system32/inetsrv文件夹中是否存在w3wp.exe .

Tao*_*Tao 9

了解您使用显式创建线程解决方法解决了您的问题(可能是堆栈溢出异常),这是您的问题的实际答案:

如上所述,提供的错误("无法打开文件w3wp.exe")是文件访问错误或某种类型.文档(http://msdn.microsoft.com/en-us/library/ts7eyw4s.aspx)列出了此错误的各种可能原因,但您可能遇到以下三个问题之一:

  • 也许该文件正在使用中,因为该进程正在运行(请确保停止在系统上运行的所有w3wp.exe实例,无论谁启动该进程 - 例如通过手动停止所有应用程序池).
  • 也许您没有权限编辑该文件,因为您没有以"管理员"身份启动VS命令提示符.
  • 也许您没有编辑文件的权限,因为它由"TrustedInstaller"拥有,甚至"Administrators"组也没有写访问权限.如果是这种情况,那么要修改文件,您需要更改所有者(例如http://helpdeskgeek.com/windows-7/windows-7-how-to-delete-files-protected-by-trustedinstaller/)

我必须处理所有这三个问题才能在Windows 7上实际更改IIS中的默认最大堆栈大小.

但正如您所指出的,如果您可以这样做,显式线程创建通常会更好,因为它可以避免每次Windows更新修改时手动修补w3wp.exe文件的服务器维护开销.