Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何检查.Net Framework是否已安装[C#/WPF]_C#_Wpf_.net 3.5_.net 4.0 - Fatal编程技术网

如何检查.Net Framework是否已安装[C#/WPF]

如何检查.Net Framework是否已安装[C#/WPF],c#,wpf,.net-3.5,.net-4.0,C#,Wpf,.net 3.5,.net 4.0,在启动我的应用程序(加载表单)之前,我想检查并确保计算机上安装了.NET framework(3.5或更高版本)-如果没有,我想提示用户下载并安装它(最好是带有Microsoft网页INTERNET链接的简单MessageBox否?) 所以,这实际上包含两个问题 a) 如何确定是否安装了.NET FrameWork 3.5或更高版本?(我不信任或只想查找C:\Program Files\Microsoft.NET文件夹,似乎容易出错没有?) 鉴于这一点非常重要,在C#中必须有一种很好的方法来确定

在启动我的应用程序(加载表单)之前,我想检查并确保计算机上安装了.NET framework(3.5或更高版本)-如果没有,我想提示用户下载并安装它(最好是带有Microsoft网页INTERNET链接的简单MessageBox否?) 所以,这实际上包含两个问题

a) 如何确定是否安装了.NET FrameWork 3.5或更高版本?(我不信任或只想查找C:\Program Files\Microsoft.NET文件夹,似乎容易出错没有?) 鉴于这一点非常重要,在C#中必须有一种很好的方法来确定用户在其机器上运行的.NET版本?我只是不知道怎么

b) 如何将INTERNET链接(超链接?)粘贴到MessageBox中?因此,如果用户没有安装.NET framework(1.1或2.0),我可以让他们只需单击链接即可下载它

如有任何帮助/提示,将不胜感激

谢谢,
Din

没有框架,代码将无法运行,因此无法显示对话框


此检查应在安装时完成。

您不能从应用程序中执行此操作。应用程序将无法启动


您可以做的一个选择是进行ClickOnce安装,以验证是否安装了.NET。

那么您想制作一个.NET应用程序来检查机器上是否安装了.NET

如果未安装.NET Framework,您认为程序首先是如何启动的?

a)您必须使用非.NET语言(C++、VB6等)而不是表单加载引导程序(其他海报都是正确的-如果未安装Framework,.NET程序将不会运行)。例如:


b) 您不能在消息框中放置超链接,因此必须创建自己的弹出对话框(表单)编辑:该表单/对话框必须在引导程序中。

您不能在.NET中进行编辑,因为首先需要.NET。但是,您可以创建一个本机应用程序来执行检查,然后启动.NET应用程序

这个问题毫无意义

作者希望能够检测是否安装了.NET Framework 3.5,但提供了指向.NET Framework 1.1和/或.NET Framework 2.0的链接。除此之外,您可以像Paint.net一样轻松地构建一个执行此操作的安装项目(尽管他们有一个引导程序),您还需要确保安装了正确版本的.net Framework

如果只安装了.NET Framework 1.1,而您没有为您的用户安装.NET Framework 4.0/3.5,则会出现严重问题


如果你推行.NET Framework 4.0,那么你就不能帮助你的程序员同伴。

看看这个问题:从技术上讲,你可以有一个.NET 2.0应用程序boostrap(或其他语言,如C++)@RQDQ,你的意思是说可以在不安装相关框架的情况下安装.NET应用程序吗?当然不是。没有免费的午餐。见我上面的回答(这篇评论只是为了解决一个可能的边缘案例,原始海报可能会也可能没有试图解决)。