2013-01-14 136 views
0

我正在開發一個應用程序在Framework 3.5中。 我想要Installshield檢查是否已安裝Framework 3.5。 如果沒有安裝,我希望它從互聯網下載,然後安裝它。Installshield不安裝prerqe(Framework 3.5)

我的應用程序數據 - >再分發, 我對微軟Framework 3.5 SP1中的Installshield的Prerqe。 它是「本地安裝」並構建位置「從源媒體複製」。

我Framework 3.5的要求進行安裝。

在Windows XP中,它工作正常。 如果需要,它會要求用戶安裝Framework 3.5。

在Windows 7,8,2008:即使沒有安裝框架3.5。它不會要求用戶下載/安裝它。它只會提示他們安裝無法繼續,因爲3.5未安裝。

如何解決這個問題的任何想法?

回答

0

提供的前提條件是唯一有效的預贏7. Win7的開始,.NET 3.5包括作爲窗戶組件,不能使用該前提條件進行安裝。您必須使用DISM命令來安裝該功能。從Win8開始,.NET 3.5位不會緩存在Windows安裝介質中,並且需要在DISM命令期間通過Internet連接從Windows Update進行下載。

是的。我也不喜歡它。從部署的角度來看,最簡單的做法是在安裝.NET 3.5或4.0時進行安裝,並測試應用程序以確保它可以在CLR 2.0和4.0上運行。

+0

這將需要打破許多Linq功能。你認爲這真的是最簡單的方法嗎? (不是諷刺,這是一個真正的問題)。我的許多應用程序在2.0中工作,但不是全部。但是,有很多錯誤運行在2.0 –

+0

.NET 2.0/3.0/3.5都是CLR 2.0。 .NET 4.0/4.5是CLR 4.0。你的.NET 3.5應用程序應該在.NET 3.5,4.0或4.5上工作。 –