VS2005 SP1 “無法使用此產品的安裝源,請確認安裝源存在,並且您可以訪問它”的錯誤

VS2005 SP1 “無法使用此產品的安裝源,請確認安裝源存在,並且您可以訪問它”的錯誤
2008-10-24 14:49
安裝的是 Visual Studio 2005 Team Suite 中文版, 昨天下了SP1準備打上, 卻在提取文件後出現“無法使用此產品的安裝源,請確認安裝源存在,並且您可以訪問它”的錯誤。 開始懷疑是自己裝的VS版本的問題(下載版+正式序列號)。 於是卸了,再去找來貌似完Retail的TS英文版裝上, 下了個英文版的SP1, 問題依舊。

Google了一下, 光見有問的,沒見有回答的。 看來大多人安裝都挺順的, 自己找原因吧。

打開臨時文件夾看了看, 找到安裝Log, 看到了錯誤所在:“Error 1718. File was rejected by digital signature policy”。 有的放矢,解決問題就容易了。


原因

當計算機沒有足夠的連續內存可供 Windows Server 2003 或 Windows XP 用於驗證是否對 .msi 包或 .msp 包正確進行了簽名時將出現此問題。
數字簽名可幫助確保程序包不會被篡改。當 Windows Installer 調用 SaferIdentifyLevel 函數時,Windows Server 2003 和 Windows XP 使用其他安全級別,即軟件限制策略。

當 Windows Installer 同時調用 SaferIdentifyLevel 函數和 SAFER_CRITERIA_IMAGEHASH 標誌時,整個程序包被加載到計算機上的內存中。計算機必須擁有程序包大小所需的足夠連續內存。如果計算機沒有足夠的連續內存,則會出現錯誤。由於出現錯誤,Windows Installer 將無法驗證是否對該程序包正確地進行了簽名。因此,會收到“症狀”部分中提到的錯誤消息。


方法一(建議使用)
1. 打開註冊表編輯器, 轉到項:HKEY_LOCAL_MACHINE/Software/Policies/Microsoft/Windows/Safer/CodeIdentifiers

2.將 PolicyScope 的註冊表值從0改爲1. (沒有就新建一個)
3.命令行中執行 net stop msiserver 停止Windows Installer服務。
4.安裝 SP1 (好慢,不過這回挺順了)
5.裝完把步驟2中的 PolicyScope值改回0.
6.喜歡的話就重啓一下。

方法二
如果以上步驟不能解決該問題,請按照下列步驟操作:
1. 管理工具-》本地安全設置-》軟件限制策略。(如果如果沒有軟件限制,右擊“軟件限制策略”,新建一個。)
2. “對象類型”下雙擊“強制”,並將第2個勾選從“所有用戶”改爲“除本地管理員以外的所有用戶”
3. 重啓,安裝SP1.
4.改回原先設置。

本文轉自:http://www.cnblogs.com/wayne-ivan/archive/2008/10/09/1086104.html

感謝這位網友文章很有幫助特此收下。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章