2

当我第一次在 Visual Studio IDE 之外运行我的 C# WinForms 可执行文件时,我收到了以下对话框:

"<Application> has stopped working, Windows can check online..."

因此,我使用 Visual Studio 的 Attach to Process 附加到该进程,这表明该程序已暂停InitializeComponent()(但没有提供进一步的线索)。

我编辑了应用程序,在上述代码周围放置了一个 try/catch 块,这使我可以打印以下MessageBox输出:

如您所见,这表明应用程序无法找到所需的 DLL。

我的问题:我是否可以在不修改应用程序的情况下实现这个结果(也就是说,没有 try/catch 块打印出细节)?Visual Studio 附加到进程功能能否引导我解决缺少 DLL 的具体问题?如果是这样,怎么做?

4

1 回答 1

3

如果启用了融合日志,则可以从融合日志中找到此信息。Fusion 日志有助于诊断程序集加载是否因缺少依赖项而失败。

此外,有时事件查看器会提供有用的信息。

https://msdn.microsoft.com/en-us/library/e74a18c4%28v=vs.110%29.aspx

于 2015-02-08T20:10:04.273 回答