【发布时间】:2019-06-25 14:55:18
【问题描述】:
Inno 设置检查 dotnet 核心是否已安装。 在注册表编辑器中找不到 .net 核心的 REG_DWORD。 有人可以帮我在注册表编辑器中找到 .net 核心版本以检查是否安装了 .net 核心
【问题讨论】:
标签: .net .net-core inno-setup
Inno 设置检查 dotnet 核心是否已安装。 在注册表编辑器中找不到 .net 核心的 REG_DWORD。 有人可以帮我在注册表编辑器中找到 .net 核心版本以检查是否安装了 .net 核心
【问题讨论】:
标签: .net .net-core inno-setup
当前运行dotnet --version 或dotnet --info 可能是最简单的方法。
我想,因为 .net 核心可以安装在任何地方(Mac、Linux、Windows),他们决定坚持使用 CLI。
我见过有人使用HKLM\SOFTWARE\dotnet\Setup\InstalledVersions\x64\... 来检查版本,但我认为这不是跨 .net 核心版本、操作系统版本、32 位和 64 位等的一致解决方案,所以尽量避免使用注册表
您还可以通过编程方式在Program Files 中查找dotnet 文件夹。如果它在那里,请转到host/fxr 子目录并在那里找到最新版本,即
C:\Program Files\dotnet\host\fxr\*VERSION*\hostfxr.dll
顺便说一句,hostfxr.dll 库公开了一个导出 hostfxr_get_available_sdks。您可以加载库并调用此 API(无需设置)以获取已安装 SDK 的列表 - 这类似于 dotnet --info。
另外,请查看this question - 您可以找到更多检查 .net 核心版本的方法。
希望对你有帮助
【讨论】:
dotnet --info?那是我正在努力的部分,而不是命令本身。它将该命令及其输出集成到我的脚本/设置中。