2009-02-27 162 views

回答

7

由于无法在加载.NET运行时之前执行,因此无法使用托管的代码检查.NET框架的版本号。您可以使用CLR Unmanaged API执行此操作,但解决此问题的最佳方法是提供一种安装机制,用于在计算机上未安装.NET Framework的情况下检查,下载和安装.NET Framework。

0

我想,必须在安装程序脚本中进行检查。

2

您可以在非托管代码中编写存根以执行此操作,但是先决条件通常是您创建安装应用程序的原因。

1

看看.NET框架客户端配置文件(http://msdn.microsoft.com/en-us/library/cc656912.aspx):

.NET框架客户端配置文件提供了一个共同的引导程序的设置,您可以使用您的客户端应用程序。这确保安装运行应用程序的所有要求,而不管.NET Framework的哪个版本(如果有)。安装体验提供了一致的用户界面(UI)和无缝安装,无论目标操作系统是Windows XP还是Windows Vista。

0

如果打包到安装程序中,您可以设置安装条件来检查.NET和框架版本。

另一种方式来检查框架是:

System.Runtime.InteropServices.RuntimeEnvironment.GetRuntimeDirectory; 
System.Runtime.InteropServices.RuntimeEnvironment.GetSystemVersion; 

从O'Reilly的食谱。

但是,这两个都是因为.NET必须在代码甚至可以开始检查之前安装的事实。

相关问题