I've built a .NET Windows Forms application in Visual Studio 2010. I also built a corresponding setup/install package via Visual Studio 2010. This is built as a 32-bit (x86) application. (We make use of third-party Windows Forms controls that are 32-bit only).

I am able to run the setup package and deploy successfully to other Windows 7 64-bit environments and 32 bit Windows XP boxes. The installed application runs fine on these.

然而,当我试图运行Windows Server 2008 R2-64位时,应用程序在启动时崩溃.它通过安装程序成功安装,没有任何错误.

加载应用程序时,它似乎会崩溃.我在应用程序的第一行放了一个消息框,看看它是否通过了加载.消息框不会出现,所以我假设它发生在应用程序的加载/初始化期间.

到目前为止,我还没有找到太多可以继续下go 的东西.从这些细节中,我可以看到以下几点:

Exception Code: E0434352

我在谷歌上搜索了一下,看看有没有什么明显的东西,但什么也没看到.我看到一些关于CLR中可能出现堆栈溢出的参考.

Windows窗体应用程序是通过以下引用生成的:

  • 第三方控件
  • 基础设施Winforms控件
  • Oracle DataAccess DLL
  • 兔子

有什么问题吗? 我如何才能弄清楚这一点呢? 如何调试以获取更多有用的信息?

推荐答案

0xE0434352是the exception code for all .NET exceptions,所以这不会告诉你太多.你是怎么得到这个异常代码的?事件日志(log)?

最好使用调试器来获取更多信息.如果VisualStudio调试器无法帮助您,那么您可能需要使用SOS判断WinDbg.请参见herehere了解介绍.让它打断异常,看看是否可以获得更多关于为什么的信息.

如果您怀疑这是加载程序集时的问题,则可能需要判断Fusion Log.

.net相关问答推荐

为什么解码后的字节数组与原始字节数组不同?

.Net MAUI Android 无法与 API localhost 对话

使用 Thread.Abort() 有什么问题

.NET 的future 版本会支持 C# 中的元组吗?

如何使用 C# 中的代码更改网络设置(IP 地址、DNS、WINS、主机名)

是否有任何 x 次的 for 循环的更短/更简单的版本?

是否可以模拟 .NET HttpWebResponse?

SubscribeOn 和 ObserveOn 有什么区别

您可以在 C# 代码中捕获本机异常吗?

将接收到的对象转换为 List 或 IEnumerable

非通用 TaskCompletionSource 或替代

如何保护我的 .NET 程序集免受反编译?

将两个列表映射到 C# 中的字典中

从 'System.Int32' 到 'System.Nullable`1[[System.Int32, mscorlib]] 的无效转换

如何以编程方式删除 WebClient 中的 2 个连接限制

DateTime.Compare 如何判断日期是否小于 30 天?

.NET 的 XPath 和 XSLT 2.0?

C# 应用程序中的全局键盘捕获

使用没有catch块的try-finally块

如何在我的机器上找到 fuslogvw.exe?