gpt4 book ai didi

c# - 如何从 C# csproj 文件中引用解决方案的平台?

转载 作者:行者123 更新时间:2023-12-04 04:51:37 25 4
gpt4 key购买 nike

我有一些构建为 AnyCPU 的 csproj 文件,这些文件附带一些为特定架构构建的 native 组件。这些文件需要放在同一个位置,所以我想根据当前选择的平台和配置来设置输出目录:

<PropertyGroup>
<OutputPath>$(SolutionDir)\bin\$(Configuration)_$(Platform)\</OutputPath>
</PropertyGroup>

不幸的是,因为这是在 AnyCPU 项目中,而不是生成 $(SolutionDir)\bin\Release_x64\的输出目录,而是生成 $(SolutionDir)\bin\Release_AnyCPU 的输出目录。

我想避免制作这个库的新的特定于位的版本。我只希望构建将文件放在正确的位置。

csproj 如何知道整个构建的平台是什么?

最佳答案

$(Platform) 值与托管项目完全无关。它不会以任何方式影响项目的构建方式或运行方式。抖动决定了架构,它发生在运行时,而不是构建时。

唯一有效的设置是项目 + 属性、构建选项卡、平台目标。此设置的值为 不是 由 $(Platform) 决定。自 VS2010 以来,这引起了巨大的困惑。

您现在应该会看到解决方案,因为平台名称无关紧要,您只需将其与 C++ 项目的平台名称相同即可。如有必要,将 x64 和 Win32 配置添加到托管项目。并删除 AnyCPU 配置,因为您不再需要它了。内置 + 配置管理器以确保所有项目使用相同的平台。问题解决了。

关于c# - 如何从 C# csproj 文件中引用解决方案的平台?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17353986/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com