我已经在Visual Studio2010中构建了一个.NET Windows Forms应用程序。我还通过Visual Studio2010构建了相应的安装/安装包。这是作为32位(x86)应用程序构建的。(我们使用仅32位的第三方Windows窗体控件)。
我能够运行安装包并成功地部署到其他Windows 7 64位环境和32位Windows XP机器上。安装的应用程序在这些平台上运行得很好。
但是,当我尝试运行Windows Server 2008 R2 - 64位时,应用程序在启动时崩溃。它已通过安装程序成功安装,没有任何错误。
它似乎在加载应用程序时崩溃。我在应用程序的第一行放置了一个消息框,以查看它是否通过了加载。消息框没有显示,所以我假设它是在应用程序的加载/初始化期间出现的。
到目前为止,我还没有找到太多可以继续下去的东西。从这些细节中,我看到了以下几点:
Exception Code: E0434352
我到处搜索/搜索,看看有没有什么明显的东西,但我什么也没看到。我在CLR中看到了一些可能存在堆栈溢出的引用。
Windows窗体应用程序是使用以下引用构建的:
DataAccess Winforms
问题出在哪里?我该如何解决这个问题呢?如何调试以获得更多有用的信息?
发布于 2011-06-06 03:02:03
0xE0434352是the exception code for all .NET exceptions,所以这不会告诉你太多。你是怎么得到这个异常代码的?事件日志?
最好的办法是使用调试器来获取更多信息。如果Visual Studio调试器不能帮助您,那么您可能需要使用SOS检查WinDbg。有关介绍,请参阅here和here。让它在异常时中断,看看您是否可以获得更多关于原因的信息。
如果您怀疑这是加载程序集时的问题,则可能需要检查Fusion Log。
发布于 2013-12-04 02:01:22
如果您从事件查看器中获得该错误,您应该会看到来自源".NET运行时“的另一个错误事件(至少一个)。查看该错误消息,因为它将包含Exception
信息。
发布于 2017-02-15 00:05:57
我不确定这是否会对任何人有帮助,但既然这是我的问题,我想值得一提的是:
我收到了这个错误,原来是为其构建EXE的平台有问题。我们为x86构建了它,并且它需要是x64,因为项目中有一个Oracle引用。当我们做出改变时,问题就消失了。所以,看看你有没有类似的冲突。
https://stackoverflow.com/questions/6244939
复制相似问题