在 Inno Setup 中检测 .NET 5 / .NET Core 运行环境是否存在
Posted on 2024-05-27 21:47 WebEnh 阅读(211) 评论(0) 编辑 收藏 举报为了将 .NET 5 / .NET Core 应用程序部署到客户机,我们可以编写 Inno Setup 代码来判断客户机是否安装了必要的运行环境。.NET 官方仓库 中提供了一个名为 NetCoreCheck 的项目,可以用于检测指定的 .NET 5 / .NET Core 环境是否存在。编译好的文件可以从以下两个地址下载:
文件名 | 下载地址 |
netcorecheck.exe | https://go.microsoft.com/fwlink/?linkid=2135256 |
netcorecheck_x64.exe | https://go.microsoft.com/fwlink/?linkid=2135504 |
需要注意的是,以上两个文件需要依赖 Visual C++ 2015 Redistributable ,如果不具备该环境,则运行会报错。
仅需要将运行环境名称和版本号传递给以上程序即可通过程序的返回值来判断指定的环境是否存在,如果返回值为 0 ,则代表客户机已经安装了指定的运行环境。
Inno Setup 脚本编写
在 iss 文件中,我们需要将 netcorecheck.exe 和 netcorecheck_x64.exe 加入到 Files 节点:
定义 IsNetCoreInstalled
方法来检测 .net core 环境是否已经安装:
使用方法
以下代码展示了检测 .NET 5 运行时的代码:
下面的表格中列出了更多的参数信息:
名称 | 检验参数 |
.NET Core 3.1 运行环境 | Microsoft.NETCore.App 3.1.0 |
ASP.NET Core 3.1 运行环境 | Microsoft.AspNetCore.App 3.1.0 |
.NET Core 3.1 桌面运行环境 | Microsoft.WindowsDesktop.App 3.1.0 |
.NET 5 运行环境 | Microsoft.NETCore.App 5.0.0 |
ASP.NET Core 5 运行环境 | Microsoft.AspNetCore.App 5.0.0 |
.NET 5 桌面运行环境 | Microsoft.WindowsDesktop.App 5.0.0 |
引用来源
本文是笔者根据 GitHub 仓库 InnoDependencyInstaller 中的内容整理修改而来。
Inno Setup Dependency Installer 可以在你的应用程序安装过程中下载并安装任何依赖关系,如.NET, Visual C++或SQL Server Express Redistributable! 此外,还可以轻松地添加自己的依赖关系。
- .NET
- .NET Framework 1.1
- .NET Framework 1.1 Service Pack 1
- .NET Framework 2.0 + Service Pack 2
- .NET Framework 3.5 + Service Pack 1
- .NET Framework 4.0 Client
- .NET Framework 4.0 Full
- .NET Framework 4.5.2
- .NET Framework 4.6.2
- .NET Framework 4.7.2
- .NET Framework 4.8
- .NET Core Runtime 3.1
- ASP.NET Core Runtime 3.1
- .NET Desktop Runtime 3.1
- .NET Runtime 5.0
- ASP.NET Core Runtime 5.0
- .NET Desktop Runtime 5.0
- C++
- Visual C++ 2005 Redistributable
- Visual C++ 2008 Redistributable
- Visual C++ 2010 Redistributable
- Visual C++ 2012 Redistributable
- Visual C++ 2013 Redistributable
- Visual C++ 2015-2019 Redistributable
- SQL
- SQL Server 2008 Express R2 + Service Pack 2
- SQL Server 2012 Express + Service Pack 4
- SQL Server 2014 Express + Service Pack 3
- SQL Server 2016 Express + Service Pack 2
- SQL Server 2017 Express
- SQL Server 2019 Express
- DirectX End-User Runtime
- Windows Installer 4.5
在此,感谢仓库作者 DomGries 的辛勤劳动和付出。
// contribute: https://github.com/DomGries/InnoDependencyInstaller
// official article: https://codeproject.com/Articles/20868/Inno-Setup-Dependency-Installer
本博客Android APP 下载 |
![]() |
支持我们就给我们点打赏 |
![]() |
支付宝打赏 支付宝扫一扫二维码 |
![]() |
微信打赏 微信扫一扫二维码 |
![]() |
如果想下次快速找到我,记得点下面的关注哦!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2019-05-27 cshtml 中的 AppState = Context.Application 和 控制器中的 Application 也相等