作为开发人员,我想建立我们的品牌新的VMware ESX服务器上的开发环境。 在SharePoint产品和技术配置向导中的某处,应用程序就会消失,并且在事件日志中我发现了以下错误:事情不工作:
.NET运行库版本2.0.50727.3082 - 致命的执行引擎错误(7A0979C6)(80131506)
现在我知道这一切听起来很像一个ServerFault.com风格的问题(一个非常通用的错误消息,许多在谷歌类似的命中),当然, 我们以这样的方式解决这个问题(安装/卸载服务包/修补程序,不同的操作系统版本,测试的安装,设置不同的单个元素的虚拟机等),但出于个人兴趣,我想获得更多的理解有关问题,那么“安装修补程序XXYY,并希望它消失” 。 我在想: 我如何从一个程序员的角度来看待这个问题 ?
- 我能以某种方式使调试器停止发生此问题时,或手动将其指向报告的地址(什么模块)?
- 我应该尝试安装使用Visual Studio这一点,或使用低级工具,如WinDbg的?
- 这些是什么错误代码是什么呢? 后者看起来像一个COM错误。 是另外一个地址?
- 我能以某种方式打开更详细的错误报告? 一个断裂的.dll将是很好。
你可以告诉我没有在这个级别在.NET环境中调试都经历过,但我很愿意学习。 任何指针是最欢迎!
PS当我尝试运行命令行配置工具psconfig做一个非UI配置,大多数如果不是所有的命令触发StackOverflowException。 同样,我在哪里从那里去?
简短的回答:阅读的博客苔丝Ferrandez 。 这包含了很多宝贵的指导来调试.NET应用程序,并指导您如何做到这一点。
较长的回答...
在Visual Studio中
如果您已经安装了Visual Studio中,您可以尝试打破任何未处理的.NET异常。 为了实现这一目标,进入菜单,选择调试,异常和剔公共语言运行时异常。 然后去工具,选项,调试和勾去掉启用仅我的代码。 最后,重视配置向导(你显然需要首先运行),Visual Studio调试器的过程中会在异常发生点突破。
假设中断调试(如果没有你已经连接到了错误的过程),那么你应该能够访问调用堆栈,并且可以从大约什么错误的方法名进行一些猜测。 然而,有这混淆的可能性,这将不会是有益的。 您还可以看到当前的MSIL指令的调试程序已停止对。 这就是它开始变得有点超出我,但有很好的参考那里帮助您了解正在发生的事情的代码。
如果没有的Visual Studio
如果您没有Visual Studio或由于某种原因不能获得调试器打破做的话,就可以创建崩溃进程的转储。 有两种方法,我知道的。 一种是由Windows Server性能团队描述使用好醇”华生医生。 另一种是新的工具刚刚由Mark Russinovich编写发布了名为ProcInfo ,可以自动创建,通过未处理的异常崩溃的过程的转储。 可能有其他的方法。
一旦你的转储,您可以使用此知识库文章 ,以帮助您设置调试它。
最后
返回到“简短的回答”上面:读苔丝的博客进一步进步! 这是一个很大的话题,她有我eveer找到最好的资源。 也有一个很好的职位由文森特·罗斯韦尔这可能有助于但它确实瞄准往调试自己的代码。
顺便说一句 - 你不应该得到你是例外。 这表明一个相当严重的问题。 我想看看腐败,严重的硬件故障,并考虑重建。