10

我使用 VS 2010 在 C# 中编写了一个 WPF 应用程序。该应用程序将在使用 Visual Studio 的调试模式下运行良好,但是当我从 bin\release 文件夹运行 .EXE 时,没有任何反应。我没有从 Windows 收到任何错误消息,并且 VS 中没有错误或警告。我试图构建、重建和清理解决方案(以所有可能的顺序),但没有成功。我的解决方案包含 2 个项目,这两个项目都使用 .NET 4.0 框架,并且我的 PC 上安装了 .NET 4.0。XP和Win7都试过了,还是不行。

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

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

有任何想法吗?

4

7 回答 7

9

这里有几个想法

  • 如果您在 x64 机器上,请尝试将应用程序从 AnyCPU 更改为 x86。这是应用程序默认处于调试模式的模式,并且可能在 x64 中运行的问题导致发布版本出现问题
  • Release 二进制文件可能已过期。从 Release 文件夹中删除二进制文件,重建并运行新生成的运行
  • 在 Visual Studio 的调试器下运行发布版本,看看它是否直到崩溃
于 2010-11-17T17:03:43.887 回答
5

我也遇到了上述问题,但是其他解决方案都不适合我。

我的应用程序日志在事件查看器中列出了事件 id 1018 和 1022。这似乎与 ASP.NET 2.0 dll 奇怪地相关(奇怪;因为这只是一个空白的 WPF 项目)。日志包含如下消息:

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

最后,当我禁用我的防病毒软件时,它被解决了。我读到这个解决方案适用于 McAfee 的某个人。它也适用于我的环境,它有 Avast。

于 2015-11-24T14:36:18.803 回答
2

我假设您在没有安装 Visual Studio 的机器上尝试过,也没有用于开发的组件。

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

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

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

也使用这个:

于 2010-11-17T17:00:58.393 回答
1

(JaredPar)答案看起来正确(x64),但如果不是,请尝试右键单击 EXE 并在管理员模式下运行 win 7。

于 2010-11-17T18:56:22.860 回答
1

我有一个非常相似的问题。

在您的应用程序池条目中查看此设置:

  • 转到高级设置。
  • 将“启用 32 位应用程序”更改为“真”。

这对我有用!

于 2011-04-15T16:29:06.613 回答
0

我遇到了类似的问题,我在构造函数中引用的发布模式中缺少一个自定义文件夹。将文件夹添加到版本解决了这个问题。

于 2012-04-30T18:31:03.213 回答
0

我会大胆猜测:

  • 您的 .NET Framework 安装中有一些奇怪的损坏
  • 有一些调试/发布特定的代码使用#if DEBUG或导致问题的本质不同。
  • 您最近还没有编译到 Release 中(在编译最新代码之前尝试将其更改为 Release 并确保没有错误)。

这些是我唯一能想到的事情。

于 2010-11-17T17:03:28.227 回答