Visual Studio 2022 中的“目标操作系统”和“目标运行时”有什么区别?

问题描述 投票:0回答:1

在构建设置中,有一个叫做“目标操作系统”的东西,它列出了

Android
iOS
Windows
MacOS
TvOS

在发布设置中有一个叫做“目标运行时”的东西,它列出了

windows-x86
windows-x64
linux-x86
linux-x64
osx-x64
...

我可以指定一些不一致的设置,例如 TargetOS:

Android
,Target 运行时:
windows-x64
,发布仍然会生成
windows-x64
可执行文件。那么 TargetOS 的目的是什么?

此外,如果我指定“目标操作系统版本:

Windows 10.xxx
”,发布文件夹将包含一个名为“Microsoft.Windows.SDK.NET.dll”的新
.dll
,大约 20MiB,但不存在如果我指定
Windows 8
,那么为什么 SDK .dll 仅在针对 Windows 10 或 11 时存在?

.net visual-studio visual-studio-2022
1个回答
0
投票

操作“目标操作系统”(和“目标操作系统版本”)实际上会将项目

TargetFramework
设置(存储在.csproj中)修改为相应的目标框架名字对象(TFM)。您不应将其视为最终设置,而应将其视为“默认”设置(即,如果您在发布时未指定一个设置,例如使用
dotnet publish
或 MSBuild 将使用此设置)。

© www.soinside.com 2019 - 2024. All rights reserved.