【发布时间】:2014-06-25 20:57:42
【问题描述】:
我有一个包含多个项目的 VS2013 解决方案(一个 C# WPF 应用程序和类库)。每个项目的“平台目标”设置为“任何 CPU”。我的印象是,生成的 EXE 将作为 64 位应用程序在 64 位 PC 上运行,而在 32 位 PC 上作为 32 位应用程序运行。它是否正确?我的开发 PC 是 64 位的,但是当我运行应用程序(独立或通过 VS 调试)时,它在任务管理器中显示为“foo.exe *32”。这是怎么回事?
我们有一个 32 位机器的初级开发人员。他还能打开解决方案并在 VS 中运行吗?
此外,一些项目引用了第 3 方 DLL。供应商提供 32 位和 64 位版本 - 项目应该引用哪一个?如果我引用 32 位 DLL,这会阻止应用程序作为 64 位应用程序运行吗?如果我引用 64 位版本,这会给 32 位开发者带来问题吗?那么最终用户呢?我的安装程序是否需要检查操作系统版本并跨适当的 DLL 进行复制?
最后,通过 NuGet 引用的 DLL 呢? NuGet 是否安装 32 位或 64 位版本的 DLL?如何处理 32 位或 64 位最终用户安装?
【问题讨论】:
标签: c# visual-studio