如何调试特定于环境的错误?

我有一个应用程序在本地计算机上运行绝对正常,使用各种环境(SQL,Windows)。 但是,我们有一个特定的环境,它无法运行,在clr.dll中抛出c0000005错误。

我是否可以使用任何技术来确定在这个特定(受限制的)环境中发生了什么? C#代码没有被命中,因此在应用程序的初始加载和设置中有一些失败。

我不希望得到它为什么失败的答案,但有些帮助我找到的东西比非常有限的崩溃报告更多。 代码使用的是.net 4.6.2,因此应该与windows工具本身进行很少的(如果有的话)直接交互。 我怀疑它是服务器上的损坏的dll或者应用程序正在尝试加载此环境中缺少的内容。 或者,它可能正在寻求访问不允许的内容(这只是两个服务器之间的问题)。

Windows 2008已经为您创建了一个小型转储。 在这里阅读: https : //msdn.microsoft.com/en-us/library/windows/desktop/ee416349(v = vs。85).aspx #writing_a_minidump

找到minidump并在Visual Studio,dmpcheck或其他工具中打开它。 某处应该有一些东西在其中一个堆栈跟踪中显示SEH或Access Violation。 这会告诉你有问题的方法或function。