【问题标题】:Force C# app to compile as x64 instead of AnyCpu强制 C# 应用程序编译为 x64 而不是 AnyCpu
【发布时间】:2010-12-11 09:32:22
【问题描述】:

我一直在尝试使用 C# 2010 Express 在 C# 应用程序中引用本机 x64 dll。我有一个从 2008 年项目转换而来的演示项目,该项目在其属性中具有配置和平台选项,但我创建的新项目没有!下拉列表根本不存在——事实上我什至无法从调试切换到发布。他们都使用 .Net Framework 4,其他一切似乎都一样。

在 C++ 和转换后的 C# 项目中,这很简单,您只需打开解决方案的配置管理器即可,但我的新 C# 项目在上下文菜单中没有。

由于需要大量内存,我需要能够引用 x64 下的 x64 dll 和 x86 下的 x86 dll。谁能解释为什么该选项丢失或指出如何解决它?

【问题讨论】:

    标签: c# 64-bit


    【解决方案1】:

    选择构建 - 配置管理器。在 Platform 下选择 new,然后在此处选择 x64。

    【讨论】:

    • 它不存在。我有构建解决方案、重建解决方案和灰色的发布选择。
    • @SilverbackNet - 转到工具 -> 选项,选择“项目和解决方案”,选中“显示高级构建配置”复选框。你现在应该可以得到配置管理器了
    • 对我不起作用。我检查了“显示高级构建配置”,但仍然没有 x64。我在解决方案中有两个项目;一个有 x64 作为构建选项,另一个只有 Any CPU。
    【解决方案2】:

    要使项目运行时可配置,首先要了解如何在运行时加载程序集,如:http://support.microsoft.com/kb/837908

    使用 IntPtr.Size 确定您正在使用的平台,如:http://msdn.microsoft.com/en-us/library/ms973190.aspx

    使用带有 IntPtr.size 参数的工厂来获取正确的 dll,如: http://www.go4expert.com/forums/showthread.php?t=5127#abfactory

    【讨论】:

    • 我的问题是我根本无法让 x64 工作,所以我根本无法测试或调试它。我已经知道我处于 x86 模式。但我想我现在可以正常工作了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-31
    • 2012-03-17
    • 1970-01-01
    • 1970-01-01
    • 2017-11-30
    相关资源
    最近更新 更多