我使用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,病毒扫描程序非常臭名昭着,尤其是赛门铁克的产品.