【发布时间】:2020-02-02 21:19:41
【问题描述】:
我目前正在运行 IIS 6.2 的 Windows Server 2008 上运行 ASP.NET WebForms 应用程序,并且开始收到以下错误消息:
System.InsufficientExecutionStackException: Insufficient stack to continue executing the program safely. This can happen from having too many functions on the call stack or function on the stack using too much stack space. at System.Runtime.CompilerServices.RuntimeHelpers.EnsureSufficientExecutionStack() at System.Web.UI.Control.FindControl(String id, Int32 pathOffset)
我花了几个小时试图解决这个问题,并找到了一个通用的解决方案,修改 w3wp.exe 以使用以下命令行将默认堆栈大小从 256kb 增加到 1MB:
EDITBIN /STACK:1048576 w3wp.exe
但是当我尝试使用以下步骤运行它时:
- 以管理员身份打开 CMD
- 键入 cd C:\Windows\System32\inetsrv
- 然后输入 EDITBIN /STACK:1048576 w3wp.exe
我收到以下消息:
'EDITBIN' 不是内部或外部命令、可运行程序或批处理文件。
有人能指出我为什么该命令不起作用的正确方向吗?
【问题讨论】:
-
这更有可能是您的代码有问题...递归循环?查看您对“FindControl”的调用
-
嗨@pcalkins,页面上有相当多的。我可以考虑替换 FindControl 函数并通过存储过程生成值。