.net - 致命执行引擎错误 (7A097706)(80131506)

标签 .net windows-services clr

我使用 VS 2008 构建了一个针对 Framework 3.5 的 Windows 服务。当我在工作站上安装并尝试运行该服务时,它崩溃并出现 .NET Framework 错误,详细信息如下:

Event Type: Error  
Event Source:   .NET Runtime  
Event Category: None  
Event ID:   1023  
Date:       2/5/2010  
Time:       11:40:48 AM  
User:       N/A  
Computer:   SP901601  
Description:
.NET Runtime version 2.0.50727.3053 - Fatal Execution Engine Error (7A097706) (80131506)

然后,另一个错误:

Event Type: Error  
Event Source:   .NET Runtime 2.0 Error Reporting  
Event Category: None  
Event ID:   1000  
Date:       2/5/2010  
Time:       11:40:48 AM  
User:       N/A  
Computer:   SP901601  
Description:
Faulting application MyService.exe, version 1.0.0.0, stamp 4b6c5757, faulting module mscorwks.dll, version 2.0.50727.3053, stamp 4889dc18, debug? 0, fault address 0x0001c2b7.  

我从头开始重建了服务项目,从头开始重建了安装项目,从我的工作站中删除并重新安装了 .NET Framework 3.5 SP1,尝试以本地系统和特定域帐户运行,但这些都没有已经解决了问题。

有什么想法吗?

最佳答案

这是 CLR 检测到垃圾收集堆损坏时生成的异常。这种损坏的最典型来源是非托管代码写入托管数组并溢出数组边界。

如果您不知道哪些非托管代码可能会执行此操作,那么您在调试此操作时将遇到相当困难的情况。 Fwiw,病毒扫描程序因此而臭名昭著,尤其是赛门铁克的产品。

关于.net - 致命执行引擎错误 (7A097706)(80131506),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2209197/

相关文章:

c# - 父子类关系设计模式

java - 如何为不受信任的应用程序运行创建沙箱?

c# - .NET Core 中的 NLog 事件属性

windows - 在远程计算机上重启服务的最简单方法

c# - Windows服务未显示在控制面板下的“添加删除程序”中

c# - 使用 Thread.Sleep 时启动 .NET Windows 服务时出现问题

.net - 加载新的托管应用程序时,是否每次都加载和初始化CLR?

c# - 使用 SharpZipLib 创建没有文件夹结构的 .tar.gz 存档

C#函数重载规则

c# - 如何调试 .NET 中的 System.TypeLoadException 错误?