如何使用Visual Studio 2010编译64位C DLL?

时间:2010-06-17 09:37:42

标签: c visual-studio-2010 dllimport 32bit-64bit

我在源代码中用C编写了一个DLL。这是General Polygon Clipper的代码(如果您感兴趣的话)。我通过主页上提供的C#包装器在C#项目中使用它。这附带一个预编译的DLL。

自从使用Visual Studio 2010和Windows 7 64位切换到64位开发机器后,应用程序将不再运行。这是我得到的错误:

  

尝试加载格式不正确的程序。

这是因为DLLImport 32位gpc.dll,因为我从网上找到的内容中收集了这些内容。

我认为如果我将DLL重新编译为64位,这一切都会消失,但不能因为我的爱而弄清楚如何这样做。我的C技能是基本的,因为我可以用GNU工具编写C程序,但没有使用各种编译器/处理器/ IDE等的经验。

我相信我可以把它移植到C#。我的意思是我相信自己实际上把它拉下来了。但我不愿意,因为它是很多的工作,我更喜欢编译器为我做的事情;)

1 个答案:

答案 0 :(得分:6)

它可以像创建新平台一样简单:

  • 打开项目的属性页(ALT + ENTER)
  • 在右上角的下拉菜单中选择平台 x64
    • 如果该平台尚不存在,请创建一个新平台
  • 重建
    • 确保在构建时检查正确的文物,因为您现在可能有不同的输出目录。