簡體   English   中英

安裝4.5時,不會安裝.NET Framework 4.0

[英].NET Framework 4.0 does not install when 4.5 is already installed

我將Visual Studio 2012用於需要(至少).NET Framework 4.0的WPF項目。 我已經安裝了4.5,但是使用Windows XP的人無法安裝該應用程序(因為4.5不能在Windows XP上運行)。 我使用ClickOnce作為部署應用程序。

當我嘗試安裝4.0版本時,我收到錯誤(從荷蘭語翻譯,因此英文版本可能會有所不同):

此計算機上已安裝相同或更高版本的.NET Framework 4

我怎樣才能解決這個問題?

.NET 4.5就CLR而言是.NET 4.0的附加組件,因此,當您安裝.NET 4.5時,它包含4.0。 ClickOnce在安裝了.NET 4.5的計算機上生成時存在已知問題。

Visual Studio 2012 Update 1應該可以解決此問題。

您可以在Visual Studio中為.NET應用程序設置.NET框架版本。 如果要發布與Windows XP兼容的版本,則應始終選擇.NET 4或更低版本作為目標框架。

.NET 4.0 Framework應與4.5並列列出。

在此輸入圖像描述

這是在正常安裝的Windows 8計算機Visual Studio 2012 Ultimate上,無需安裝任何其他框架或SDK。

.NET Framework 4.5是就地更新並替換.NET Framework 4.一旦安裝.NET Framework 4.5,就無法返回到.NET Framework 4.請注意,.NET Framework 4.5程序集的主要版本和次要版本是沒有改變。 這意味着.NET Framework 4應用程序不會“看到”兩者之間的差異,並且應該以相同的方式運行。 由於您希望在Windows XP上運行應用程序,因此您需要在項目中使用.NET Framework 4。 這將確保您的應用程序不使用.NET Framework 4.5中添加的任何新API。 執行此操作后,您應該能夠在.NET Framework 4和.NET Framework 4.5上運行您的應用程序。 請注意,即使兼容性欄非常高(由於.NET Framework 4.5是就地更新),您仍會發現一些細微差別(例如,.NET Framework 4中導致異常的錯誤可能已在.NET Framework中修復4.5並且不再拋出異常)因此您需要徹底測試.NET Framework 4計算機上的應用程序,因為在.NET Framework 4.5上運行它不會顯示某些問題。 這樣做的原因是,目標確保應用程序不使用之前不存在的API但無法確保運行時的行為,因為在使用.NET Framework 4.5的計算機上它始終使用.NET Framework 4.5運行時(因為沒有那里有.NET Framework 4運行時)。

簡單,只需檢查控制面板並卸載更高版本並繼續安裝。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM