VS2005 SP1 出來(lái)了,號(hào)稱(chēng)是M$有史以來(lái)最bt的補(bǔ)丁,看見(jiàn)有人裝了5個(gè)多小時(shí)還在收集信息(其實(shí)就我自己)……
其實(shí)原因總結(jié)起來(lái)就兩個(gè):
1. 數(shù)字簽名認(rèn)證的問(wèn)題
2. C盤(pán)空間的問(wèn)題
原因1:Windows Installer設(shè)計(jì)的一個(gè)特性是可以驗(yàn)證文件的數(shù)字簽名。但是這次的補(bǔ)丁太
大了,要驗(yàn)證簽名的話基本上把內(nèi)存都吃光了(要1GB左右的內(nèi)存)
原因2:Windows Installer設(shè)計(jì)的一個(gè)特性是會(huì)在C盤(pán)生成一個(gè)$PatchCache$文
件,把補(bǔ)的文件再存一遍,對(duì)于這次的補(bǔ)丁嘛,這個(gè)大約會(huì)消耗掉1.3GB的空間
總之就是內(nèi)存不夠、C盤(pán)空間不夠的系統(tǒng),如果直接安裝的話肯定死得很難看 *_*
解決方案:
針對(duì)原因1:按照 http://support.microsoft.com/kb/824642/zh-cn 的指示把管理員的數(shù)字簽名驗(yàn)證關(guān)掉
針對(duì)原因2:不要直接打補(bǔ)丁,用下面的批處理:
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
@echo 關(guān)閉數(shù)字簽名驗(yàn)證
reg add HKLM\SOFTWARE\Policies\Microsoft\windows\safer\codeidentifiers /v authenticodeenabled /t REG_DWORD /d 1 /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
reg add HKLM\SOFTWARE\Policies\Microsoft\windows\safer\codeidentifiers /v authenticodeenabled /t REG_DWORD /d 1 /f
net stop msiserver
del /q installer.reg 2>nul
(來(lái)自:
http://blogs.msdn.com/heaths/archive/2006/11/28/save-time-and-space-for-vs-2005-sp1-by-disabling-the-patch-cache.aspx)
可以為你的C盤(pán)省下1.3GB空間
如果你用vista,在vista下很簡(jiǎn)單就可以搞定的:
(1)把installer文件夾cut到d盤(pán)
(2) mklink /d /j C:\Windows\Installer d:\Installer
也就是把installer文件夾換一個(gè)位置
--------------------------------------------------------------------------------
最后,不著急的話等幾天會(huì)有官方集成版本了,那時(shí)估計(jì)打補(bǔ)丁要方便多了。
如果以上步驟不能解決該問(wèn)題,請(qǐng)按照下列步驟操作:
1. 單擊“開(kāi)始”,單擊“運(yùn)行”,鍵入 secpol.msc,然后單擊“確定”。
2. 雙擊“本地安全策略”。
3. 單擊“軟件限制策略”。
注意:如果未列出軟件限制,請(qǐng)右擊“軟件限制策略”,然后單擊“新建策略”。
4. 在“對(duì)象類(lèi)型”下,雙擊“強(qiáng)制”。
5. 單擊“除本地管理員以外的所有用戶(hù)”,然后單擊“確定”。
6. 重新啟動(dòng)計(jì)算機(jī)。
其實(shí)原因總結(jié)起來(lái)就兩個(gè):
1. 數(shù)字簽名認(rèn)證的問(wèn)題
2. C盤(pán)空間的問(wèn)題
原因1:Windows Installer設(shè)計(jì)的一個(gè)特性是可以驗(yàn)證文件的數(shù)字簽名。但是這次的補(bǔ)丁太
大了,要驗(yàn)證簽名的話基本上把內(nèi)存都吃光了(要1GB左右的內(nèi)存)
原因2:Windows Installer設(shè)計(jì)的一個(gè)特性是會(huì)在C盤(pán)生成一個(gè)$PatchCache$文
件,把補(bǔ)的文件再存一遍,對(duì)于這次的補(bǔ)丁嘛,這個(gè)大約會(huì)消耗掉1.3GB的空間
總之就是內(nèi)存不夠、C盤(pán)空間不夠的系統(tǒng),如果直接安裝的話肯定死得很難看 *_*
解決方案:
針對(duì)原因1:按照 http://support.microsoft.com/kb/824642/zh-cn 的指示把管理員的數(shù)字簽名驗(yàn)證關(guān)掉
針對(duì)原因2:不要直接打補(bǔ)丁,用下面的批處理:
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
@echo 關(guān)閉數(shù)字簽名驗(yàn)證
reg add HKLM\SOFTWARE\Policies\Microsoft\windows\safer\codeidentifiers /v authenticodeenabled /t REG_DWORD /d 1 /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
reg add HKLM\SOFTWARE\Policies\Microsoft\windows\safer\codeidentifiers /v authenticodeenabled /t REG_DWORD /d 1 /f
net stop msiserver
del /q installer.reg 2>nul
(來(lái)自:
http://blogs.msdn.com/heaths/archive/2006/11/28/save-time-and-space-for-vs-2005-sp1-by-disabling-the-patch-cache.aspx)
可以為你的C盤(pán)省下1.3GB空間
如果你用vista,在vista下很簡(jiǎn)單就可以搞定的:
(1)把installer文件夾cut到d盤(pán)
(2) mklink /d /j C:\Windows\Installer d:\Installer
也就是把installer文件夾換一個(gè)位置
--------------------------------------------------------------------------------
最后,不著急的話等幾天會(huì)有官方集成版本了,那時(shí)估計(jì)打補(bǔ)丁要方便多了。
如果以上步驟不能解決該問(wèn)題,請(qǐng)按照下列步驟操作:
1. 單擊“開(kāi)始”,單擊“運(yùn)行”,鍵入 secpol.msc,然后單擊“確定”。
2. 雙擊“本地安全策略”。
3. 單擊“軟件限制策略”。
注意:如果未列出軟件限制,請(qǐng)右擊“軟件限制策略”,然后單擊“新建策略”。
4. 在“對(duì)象類(lèi)型”下,雙擊“強(qiáng)制”。
5. 單擊“除本地管理員以外的所有用戶(hù)”,然后單擊“確定”。
6. 重新啟動(dòng)計(jì)算機(jī)。
文章來(lái)源:http://www.cnblogs.com/wangdetian168/archive/2008/06/25/1229970.html