在一个非常大的解决方案中,有许多项目之一不知何故被设置为“生成平台==Active (x86)”。我希望它与所有其他项目匹配(“任何 CPU”)。
我成功地将“平台目标”下拉菜单从“Active (x86)”更改为“任何 CPU”,但“平台”下拉菜单仍然只有“Active (x86)”作为选项:
更新:
我认为问题可能是我的VS安装设置为VB而不是C#(由IT完成,这里的大部分开发人员都是VB开发人员)。
这个链接http://go4answers.webhost4life.com/Example/buildsolution-configuration-dropdown-188435.aspx提到了工具|设置,但我没有这样的菜单项。
我选择了将设置重置为原始选项,并且“正在进行设置重置”对话框已经运行了接近半个小时,VS处于“(未响应)”状态。
更新2:
现在我有一个Windows CE项目的相反问题 - 我需要它是“x86”,但它拒绝从“Any CPU”更改。
我想更改这个设置的原因是,尝试在手持设备上运行此应用程序时出现了“找不到 P/Invoke DLL sqlcemeNN.dll”错误消息。
根据this所述:“如果您的计算机是 64 位的,则可能已经陷入了默认目标平台“Any CPU”的陷阱,请将目标平台设置为“x86”。需要更多详细信息,请访问ErikEJ的博客文章。”
我的计算机是 64 位的,并且我确实阅读了引用的博客文章 ...但我在我的配置管理器的“活动解决方案平台”下拉菜单中没有“x86”选项。“Any CPU”是唯一给我的选择...
我成功地将“Active Solution Platform”下拉菜单强制更改为“x86”,但我不认为它真正改变了什么。在网格中,唯一的选项是“Any CPU”。从“Project”列中选择“Edit…”(没有“New…”)只显示列表中的“Any CPU”,一个灰色的“Remove”按钮和一个关闭按钮(“greyedoutprojectplatforms.png”)。
所以我尝试将项目的.csproj文件中每个“Any CPU”的实例都更改为“x86”,但仍然在“Project > Properties > Build > Platform Target”中显示“Any CPU”。