将活动解决方案平台从任意CPU更改为x86时,WPF应用程序无法启动



我正在开发一个WPF应用程序。它在"任意CPU"作为活动解决方案平台时运行良好,但当它更改为"x86"时,应用程序启动但停止而没有显示任何形式或错误消息。应用程序不会抛出任何异常,也不会在事件日志中记录任何错误。

我在。net 4.0框架和Windows 7 64位操作系统上运行这个应用程序。

感谢您帮助解决这个问题。

谢谢,maxk

首先,您没有得到任何错误消息,这很奇怪。即使在没有调试器的情况下启动构建的应用程序也不行吗?

根据所提供的信息,任何人都能给出的最佳答案是做一些试验和错误调试:
1)创建一个新的空项目,将其设置为x86,看看它是否运行。如果没有,你的机器设置有一些严重的问题,你可能需要重新安装。2)在你自己的项目中,如果你有任何外部引用,开始逐个删除它们,看看你的应用程序是否开始运行。可能引用的dll在32位模式下造成了破坏。
3)开始注释代码块,看看你的应用程序是否开始运行。我发现在Window_Loaded方法中有错误(特别是在调试时)会导致问题-不处理异常,应用程序崩溃等。4)可能是你有一个糟糕的Visual Studio插件(我假设你正在使用VS和问题发生在你的开发机器上)。试着在不调试的情况下运行应用程序…
5)创建一个虚拟机并在其中试用你的应用程序,如果它在那里工作,那么你的机器不知何故"损坏"了。

PS !仅供参考,因为你运行的是64位操作系统,那么Any CPU设置会导致你的应用程序是64位的。如果使用写得不好的本机dll,将其强制为32位可能会导致问题(尽管通常是反过来的-从32位转换为64位时会出现问题)。

最新更新