WPF c#应用程序部署-运行exe时不会发生任何事情

本文关键字:任何事 exe 应用程序 部署 运行 WPF | 更新日期: 2023-09-27 17:49:45

我在Windows 7虚拟机和Windows Vista笔记本电脑上复制了Debug文件夹的内容。两者都安装了Dot Net 4.5。所有程序集都设置为本地复制,而且我不引用任何不在应用程序文件夹中的内容。当我在两台不同的开发计算机(一台Win8,一台Win7)上运行该应用程序时,它运行得很好,就像在Visual Studio (F5)中运行时一样。

在部署计算机上不是这样。问题是我没有得到错误消息。在非开发机器上双击可执行文件后,绝对不会发生任何事情。

我试着在WinDbg.exe中启动它,得到了这个输出:http://pastebin.com/43PbwyGx

那么我该如何进行调试以找出缺失的内容呢?

WPF c#应用程序部署-运行exe时不会发生任何事情

查看您的WindDbg转储,您有第二次机会异常 CLR exception - code e0434352 (!!! second chance !!!)
我想看看Igor Dvorkin的这篇文章,为什么我总是得到异常代码e0434352。在这里他讨论了它是一个泛型异常,以及如何启动cdb来查找底层异常是什么。

他还链接到他的另一篇博客文章,寻找没有visual studio的CLR异常,其中他描述了使用cdb。

开发机器是64位而其他机器是32位吗?如果是这种情况,并且您正在作为AnyCPU进行构建,那么您的所有引用也需要是AnyCPU(或与您的程序运行的平台匹配)。如果您构建为x64,那么我认为您的所有引用也需要是x64, x86也是如此。

通常在这种情况下你会看到的异常是一个BadImageFormatException(它也通常记录到Windows应用程序事件日志与Side By Side Configuration源)。

另外,仅供参考,有时您可能能够在Windows事件日志中找到异常。我认为它是应用程序日志,我认为源通常是。net运行时,或应用程序错误。详细信息可能既包括实际的异常,也包括堆栈跟踪。

我不确定这些错误需要在什么条件下被记录,但这是需要考虑的。