WPF DotNET应用程序将以调试模式运行,但.EXE将无法运行

use*_*603 10 .net c# .net-4.0 visual-studio-2010 wpf-4.0

我使用VS 2010在C#中编写了一个WPF应用程序.应用程序将在使用Visual Studio的调试模式下正常运行,但是当我从bin\release文件夹运行.EXE时,没有任何反应.我没有收到来自Windows的任何错误消息,并且VS中没有错误或警告.我试图建立,重建和清理解决方案(按照每种可能的顺序),没有运气.我的解决方案包含2个项目,两个都使用.NET 4.0框架,我的PC上安装了.NET 4.0.我试过XP和Win7,但仍然没有.

我还注意到,当我在调试模式下运行应用程序时,Debug的输出显示:"无法找到或打开PDB文件".每次加载后都会加载.

我每次都在编译到Release文件夹,但我确实尝试将其更改为调试文件夹并清理/重建只是为了看看是否会产生影响,并且它没有,所以我将其更改回来,再次尝试,仍然没有.

有任何想法吗?

Jar*_*Par 9

以下是一些想法

  • 如果您使用的是x64计算机,请尝试将应用程序从AnyCPU更改为x86.这是应用程序在调试模式下默认的模式,并且在x64中运行的问题可能导致发布版本中出现问题
  • 发布二进制文件可能已过期.从Release文件夹中删除二进制文件,重建并运行新生成的运行
  • 在Visual Studio中的调试器下运行发布版本,看它是否崩溃


ne1*_*10s 5

我也遇到了上述问题,但其他解决方案都没有对我有用.

在事件查看器中列出的事件ID 1018和1022我的应用程序日志这似乎是奇怪的是关系到一个ASP.NET 2.0的DLL(离奇,因为这只是一个空白的WPF项目).日志包含如下消息:

Windows无法在32位环境中打开64位可扩展计数器DLL ASP.NET_64_2.0.50727

最后,当我禁用我的防病毒软件时,它最终得以解决.我读过这个解决方案适用于McAfee的人; 它也适用于我的环境,拥有Avast.


Bog*_*xim 2

我假设您在没有安装 Visual Studio 的计算机上尝试过,并且也没有用于开发的任何组件。

您只有一个选择:在导致问题的计算机上使用调试器启动应用程序并检查那里的异常。(例如使用WinDBG - 它轻量且简单)。

这看起来像是缺少依赖项的问题,但也可能是其他问题。

调试实验室应该为您提供有关如何使用 Windbg 查找问题的足够信息:

也可以使用这个: