基于C#的程序有几种选择可以确定安装了哪个.Net版本。但是有可能确定是否安装了.Net IS?我的意思是如果我在没有安装任何.Net的机器上运行C#程序,我会收到以下错误:
是的,我可以写一个包装器(一些外部程序或msi-package或类似的东西),但我想知道我是否可以从我的C#程序中进行这种健全性检查?我只想检查.Net存在并在失败时退出,并提供正确的警告,例如“需要Microsoft .Net。请安装bla-bla-bla”。
有任何线索吗?感谢。
答案 0 :(得分:10)
我认为执行此操作的首选方法是为您的应用创建安装程序,并使.Net Framework成为安装程序检查的预先请求。
您还可以包含.Net Framework可重新分发的组件,以便安装程序在未找到时安装它。
答案 1 :(得分:4)
如果你创建一个ClickOnce安装程序并添加你需要的.NEt版本作为先决条件,那么当你的用户第一次安装你的程序时,将会为你完成这项检查。
答案 2 :(得分:4)
不,C#无法检查.NET是否存在。这就像询问您是否可以编写程序来检查计算机是否已打开。
您需要编写本机代码来检查这一点,或者更优选地,需要编写检查此内容的安装程序。
答案 3 :(得分:1)
您可以使用Bootstrapper Plug-in,该框架将与您的应用程序捆绑在一起。