vs2005 sp1 補丁的安裝問題


最近做windows mobile 6.0的手機軟件開發,聽說用vs2005 開發的話最少得裝vs2005 sp1,於是去官網上下了VS80sp1-KB926604-X86-CHS.exe 補丁 .運行....不一會就報c盤空間太小.,汗這么能吃硬盤空間,我原本c盤2.99g 就剩下900多兆了,機器卡的都動不了了,我以為下的程序有問題呢,結束任務連裝兩次都是這樣.因為平時只用c++,於是進入添加刪除程序把vs2005 不用的功能刪除了,刪了c#,j#,Visual Web Developer Express,然現再安裝,神了,空間夠了,也可以進到安裝進度條那了,經過漫長的等待裝上了.真是幸苦啊,期間cpu一直100%.

這史上最BT的補丁到底干了什么呢,以下是轉的一篇文章

=================================================

補丁相關資料:
簡體中文版補丁名稱:VS80sp1-KB926604-X86-CHS.exe
版本: 50727.762 
知識庫 (KB) 文章: KB928957 
發布日期: 2006/12/14 
簡體中文版補丁大小:430.9 MB
簡體中文版補丁下載地址:
http://download.microsoft.com/download/8/0/7/8071514d-9370-45c3-8af1-4ff09a70e59d/VS80sp1-KB926604-X86-CHS.exe
官方建議安裝時硬盤空間至少為: 6.2GB
安裝完成且清理臨時文件后空間約減少:500MB左右
SP1的安裝過程到剖析:
以下內容引用自http://blog.joycode.com/jiangsheng
1. 解壓到%temp%/臨時目錄(對於我的Visual Studio 2005 Team System,這需要C:/Documents and Settings/Administrator/Local Settings/Temp下面1個多GB的空間) 
2. 把自己復制到%temp%下(400多MB) 
3. 把自己復制到%windows%/Installer下(C:/Windows Installer下400多MB) 
4. 解壓到%windows%/Installer/PatchCache(1個多GB)
5. 安裝過程中還會生成臨時文件(C:/Config.msi和%temp%下面的日志文件)。
安裝注意事項:
1. 安裝時間會非常長,看到很多網友說如果機器配置不是很高達到了3小時,一般的話也需要1個小時左右。我的本本配置比較高,用了不到半個小時就裝完了。
2. 安裝前檢查你的C盤是否有大於6G的空余空間,這是官方要求的數字。但也有人只有不到2G也順利安裝了,這主要取決VS自定義安裝的多少。據聞是最占空間的是VC,如果沒有VC完全用不了2G。但由於我裝VS2005就是為了用VC,所以這點沒有實踐證明過。較保險的方法是把環境變量temp和tmp ,虛擬內存都定位到其它盤上,以騰出空間。
3. 如果你以前安裝過web application project,在安裝vs2005 sp1以前請先把他卸載,否則可能會安裝失敗。
4. vs2005sp1的補丁包是把你機器上所有單獨裝過vs2005的版本的補丁都打上,如果機器上同時裝了Visual Web Developer Express和Visual Studio team sutie,那么他就要運行安裝補丁兩次.
安裝過程常見問題:
1. 數字簽名認證的問題
當您嘗試運行 Microsoft Windows Server 2003 或 Microsoft Windows XP, 計算機上安裝大 MicrosoftWindowsInstaller .msi) 程序包或大型 MicrosoftWindowsInstaller 修補程序 (.msp) 程序包您可能會收到以下錯誤信息:
錯誤 1718。 (FileName)文件被數字簽名策略拒絕。
2. C盤空間的問題
提示C盤空間不足,不能成功安裝SP1,錯誤代碼2908。
原因1:Windows Installer設計的一個特性是可以驗證文件的數字簽名。但是這次的補丁太大了,要驗證簽名的話基本上把內存都吃光了(要1GB左右的內存)。
原因2:Windows Installer設計的一個特性是會在C盤生成一個$PatchCache$文件,把補的文件再存一遍,對於這次的補丁嘛,這個大約會消耗掉1.3GB的空間
結論就是內存不足、C盤空間不夠的系統,如果直接安裝的話基本就掛了。
解決方案:
針對原因1:
參考鏈接:http://support.microsoft.com/kb/925336
解決數字簽名認證的問題步驟:
1. 單擊 開始單擊 運行 , 鍵入 控件 secpol.msc , 然后單擊確定 。 
2. 打開“安全設置->軟件限制策略”。
注意如果列出“沒有軟件限制”,需要右鍵單擊“軟件限制策略”, 然后單擊“新建策略”。 
3. 在“對象類型->強制”。
4. 點選“除本地管理員以外的所有用戶”, 並單擊“確定”。 
5. 重新啟動計算機。
要點:之后在執行以上步驟, 本地管理員可安裝 .msi 軟件包或 .msp 包。 通過以下以前步驟之后安裝程序包, 重置強制級別。 在步驟 5, 單擊 所有用戶 代替 除本地管理員以外的所有用戶。
針對原因2:不要直接打補丁,用下面的批處理:
reg export HKLM/Software/Policies/Microsoft/Windows/Installer installer.reg
reg add HKLM/Software/Policies/Microsoft/Windows/Installer /v MaxPatchCacheSize /t REG_DWORD /d 0 /f
net stop msiserver
start /wait VS80sp1-KB926604-X86-CHS.exe
reg delete HKLM/Software/Policies/Microsoft/Windows/Installer /v MaxPatchCacheSize /f
reg import installer.reg
net stop msiserver
del /q installer.reg 2>nul
將上面的保存為InstallVS2005SP1.bat,再執行該文件以啟動安裝補丁,即可禁用緩存,記得這個文件要放在和補丁同一個目錄。
說明:對於以上代碼如果不能使用,可以參考我的另外一篇文章,並且我已經親自測試過了:
vs2005新建項目中沒有ASP.NET WEB應用程序的解決方法

-mode: char; line-height: 120%">安裝失敗后的補救措施:
不能成功安裝SP1,錯誤代碼2908,然后VS2005就掛了,我是在第一次安裝SP1提示空間不足,然后再次安裝,空間還是不足時出現的。
以下這個是網友的經歷:
VS 2005 SP1 Beta doesn`t want to install It happened to me as well with the release version of SP1.
我安裝這個版本的sp1時也出現了這個問題(指錯誤代碼:2908).不只是我的VS2005 Team System 掛掉了,而且.NET 2.0 Framework一樣不能使用,包括IIS和應用程序,MSN也不能正常使用。我試着卸載vs2005,但是我再次安裝vs2005時,在安裝過程中又出現了一個錯誤。
這個是在網上找到的解決方法,其參考鏈接是一個英文論壇:
1. 刪除VS2005 
2. 刪除.NET FRAMEWORK 2.0 
3. 刪除%windir%/WinSxS/ 下的 Policies 文件夾 
4. 安裝.NET Framework 2.0 
5. 安裝VS2005 & SP1
實踐證明這個方法是可行的,不需要重裝系統。
這里補充以下,在卸載了VS2005后,有很多VS2005附帶的組件是沒有卸載的,那些組件都不需要卸載,之要卸載再卸載.NET FRAMEWORK 2.0就可以了

出處:http://blog.csdn.net/linyaoxin/article/details/4071659


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM