2009-02-27 124 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必須在代碼甚至可以開始檢查之前安裝的事實。

相關問題