【问题标题】:Application not launching on x86 build but launching on 64-bit应用程序未在 x86 版本上启动但在 64 位上启动
【发布时间】:2013-09-25 16:42:38
【问题描述】:

我已经根据解决方案中的现有标准创建了一个 WPF Windows 应用程序项目。项目属性有Platform TargetAny CPU 并说Prefer 32-bit。我的是 64 位机器,应用程序没有启动,我花了一段时间才弄清楚并关闭了 Prefer 32-bit 来启动它。

我的问题是当我说Prefer 32-bit 时发生了什么?我希望它能在 64 位机器上将其作为 32 位应用程序启动。但在我的情况下,它没有运行,它只是终止。为什么?

编辑:

问题是当我说Prefer 32-bitx86 时,它会以32 位模式构建应用程序。 Any CPU 使其成为 64 位版本。应用程序仅在 64 位模式下启动,当以 32-bit 模式启动时,它会毫无例外地终止。

【问题讨论】:

  • 你能详细解释一下and the application wasn't launching这个短语吗?
  • @yakiro 感谢您对链接的引用,根据解释,我希望该应用程序甚至可以在 64 位计算机上作为 32 位应用程序启动。该链接没有解释为什么它不会启动。
  • @Bharath 所以你要问的是为什么你的应用程序崩溃了?您是否检查了应用程序日志(在事件查看器中)以获取一些提示?

标签: c# x86-64 projects-and-solutions


【解决方案1】:

经过反复试验,发现问题出在AssemblyName 的长度上。在我将它缩减为 36 个字符后,它已经是 56 个字符了,它运行良好。无法获取有关 32 位程序集名称和 64 位程序集名称的允许限制的信息。但是 64 位允许使用更大的名称,这引起了混乱。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-16
    • 1970-01-01
    • 2012-01-19
    • 2018-12-02
    • 2020-12-08
    • 1970-01-01
    • 2017-02-10
    • 2012-02-02
    相关资源
    最近更新 更多