出現這個問題,是因爲
(1)你曾經手工安裝了FrameWork 4.0或你安裝的軟件爲你安裝了FrameWork 4.0。
(2)SP1補丁中包含了FrameWork 4.0,安裝SP1之後FrameWork 4.0 即相當於安裝到了電腦上(估計是不完全的,只提供了FrameWork 4.0運行的基礎組件),所以VS 2010再安裝FrameWork 4就會因當前已有的組件阻塞而無法安裝,導致VS安裝失敗。(3)另外所有關於FrameWork 3.5和3.5.1的更新也會阻塞FrameWork 4.0的安裝,不知道爲什麼,估計的原因是VS的安裝程序會寫在Win7默認的FrameWork 3.5,然後再安裝4.0,而FrameWork 3.5一旦更新,VS上的卸載程序就不適用了,導致Framework 3.5無法卸載,4.0也裝不上。
解決辦法:
(1)如果你手工安裝了FrameWork 4.0 ,卸載它即可。打開【控制面板】中的【程序和功能】選項,在左上角有個【查看已安裝的更新】,尋找一切Microsoft .Net FrameWork 4.0的更新卸載它,然後回到【程序和功能】,找到一切Microsoft .Net FrameWork 4.0的組件卸載它。常見的FrameWork 4.0 更新的補丁編號如下:KB2487367,KB2604121,KB2729449,KB2727019,KB2742595,KB2789624,KB2840628,KB2858302,KB2894842,KB2898855,KB2901110,KB2931365
在VS安裝成功之後記得運行Windows UpDate,或者用360之類的重新安裝FrameWork 4.0的補丁。
如果還不行。繼續看(2)和(3)。
(2)如果你是完整安裝了SP1補丁,卸載它。打開【控制面板】中的【程序和功能】選項,在左上角有個【查看已安裝的更新】,點進去之後查找KB976932更新,這就是SP1,如果可以就點擊卸載它。如果卸載不了,參見這裏http://windows.microsoft.com/zh-CN/windows7/uninstall-sp1。另外說一句,如果按照前面這個地址所說的第三項如果無法卸載 SP1 ,可以嘗試在下面下載一個SP1包,先裝後卸。
安裝完VS之後可以在下面的地址下載SP1重新上:
SP1相關全部資源:http://www.microsoft.com/zh-cn/download/details.aspx?id=5842
IA64的SP1:http://download.microsoft.com/download/0/A/F/0AFB5316-3062-494A-AB78-7FB0D4461357/windows6.1-KB976932-IA64.exe
x64的SP1:http://download.microsoft.com/download/0/A/F/0AFB5316-3062-494A-AB78-7FB0D4461357/windows6.1-KB976932-X64.exe
x86(32位):http://download.microsoft.com/download/0/A/F/0AFB5316-3062-494A-AB78-7FB0D4461357/windows6.1-KB976932-X86.exe
(3)同樣,在【查看已安裝的更新】,查找FrameWork 3.5和3.5.1的所有更新,卸載他們。常見的幾個FrameWork 3.5和3.5.1的更新的編號如下:KB2604115,KB2729452,KB2742599,KB2756921,KB2789645,KB2832414,KB2861191,KB2840631,KB2844286,KB2861698,KB2863240,KB2894844,KB2898857,KB2911501,KB2931356
在VS安裝成功之後記得運行Windows UpDate,或者用360之類的重新安裝FrameWork 3.5和3.5.1的補丁。