转自:http://blog.csdn.net/min_2115/archive/2010/01/05/5136067.aspx
安装vs2005 sp1 出现错误 1718,文件被数字签名策略拒绝及2755、1719、2908错误
若你只装VS2005的话,当你打开.Net 2.0 Web Application Project类网站项目,就会提示你:此安装不支持该项目类型,无法打开项目文件。此时没别办法帮你,你只有升级到VS2005 SP1才可。
然而VS2005 SP1 号称世界上最BT的补丁,一是安装时间超长,有的网友的机器居然狂转了一天才装完。二是安装过程总有许多莫名其妙的错,而你此时只要一点“确定”,所有的一切都又得回到3小时前从头开始。
微软的这个补丁做的是在是世界上最烂的补丁了,下面是我安装过程(我的环境:Win2003 Server+Microsoft Visual Studio 2005 Team Edition)中遇到的一些错误,刻骨铭心的惨痛经历供大家参考。
安装VS2005 SP1遭遇1718错误
尝试在 Windows Server 2003 或 Windows XP 中安装大型 Windows Installer 程序包或大型 Windows Installer 修补程序包时出现错误消息:“Error 1718. File was rejected by digital signature policy”(错误 1718。文件被数字签名策略拒绝),此时在计算机日志中可以看到类似错误信息:“由于软件限制策略处理中有错,不允许安装C:DOCUME~1ADMINI~1LOCALS~1TempZNW8VS80sp1-KB926604-X86-CHS.msp。对象不能被信任。“
替代方法
警告:如果使用注册表编辑器或其他方法错误地修改了注册表,则可能会出现严重问题。这些问题可能需要重新安装操作系统才能解决。Microsoft 不能保证可以解决这些问题。修改注册表需要您自担风险。
要解决此问题,请在尝试安装程序包之前将 PolicyScope 注册表值更改为 1。为此,请按照下列步骤操作。
注意:如果将计算机加入到域中,则域策略更新可能会覆盖您对注册表所做的更改。强烈建议在执行以下步骤之前从域中断开计算机。
1.依次单击“开始”和“运行”,键入 regedit,然后单击“确定”。
2.在注册表编辑器中,找到并单击下面的注册表项:
HKEY_LOCAL_MACHINESoftwarePoliciesMicrosoftWindowsSaferCodeIdentifiers
注意:在修改此注册表项之前,建议先备份此注册表项。为此,右键单击“CodeIdentifiers”,然后单击“导出”。将文件保存到可在计算机上找到此文件的位置中。
3.更改 PolicyScope 的注册表值。为此,请双击“PolicyScope”,然后将设置从 0 更改为 1。
4.关闭注册表编辑器。
5.依次单击“开始”、“运行”,键入 cmd,然后单击“确定”以打开命令提示符窗口。
6.在命令提示符下,键入以下命令并按 Enter:net stop msiserver
如果 Windows Installer 服务当前正在后台运行,则此命令将停止该服务。该服务停止后,请关闭命令提示符窗口,然后转到步骤 7。
注意:如果在命令提示符处收到以下消息,请关闭命令提示符窗口,然后转到步骤 7:
未启动 Windows Installer 服务
7.收到“症状”部分所述的错误消息后,请安装要尝试安装的程序包。
8.安装了程序包之后,重复步骤 1 和 2。然后,将 PolicyScope 注册表值更改回 0。
9.如果从域中断开了计算机,请重新加入域,然后重新启动计算机。
注意:如果未从域中断开计算机,则不必重新启动计算机。
如果以上步骤不能解决该问题(该死的M$,你还想害我重装不成?),请按照下列步骤操作:(我推荐你用下面的方法,我就是采用这样的方法解决的,简单快速)
1.单击“开始”,单击“运行”,键入 control admintools,然后单击“确定”。
2.双击“本地安全策略”。
3.单击“软件限制策略”。(注意:如果未列出软件限制,请右击“软件限制策略”,然后单击“新建策略”。)
4.在右侧栏“对象类型”下,双击“强制”。
5.单击“除本地管理员以外的所有用户”,然后单击“确定”。
6.重新启动计算机。(本条切记,我就是在头的催促下急于求成而在修改后没有重启而依然导致1718错误又从头花费了两三个小时的)
安装VS2005 SP1遭遇2755错误
遭遇了很多次的 Visual Studio 2005 的 SP1 安装错误,林林种种的错误搞得人什么心情都没了。
今天是为 Visual Studio 2005 Team Suite 安装 SP1,这回可是全新的系统、全新的 VS2005,没有任何添加剂!
可是,经过了漫长的等待后还是出现了 2755 的错误。
第 N + 1 次使用 google 搜索之后,我决定将遇到的问题记录下来,供自己参考,也希望能给遇到同样问题的你些许帮助。
一个叫 z3149441 哥们,在他的 Post 中写道:I had the same problem and there is a hot fix that you need to install before installing the SP1. KB925336 is the knowledge base article.
按照他的说明,我找到了 WindowsServer2003-KB925336-x86-ENU.exe 这个文件,一个早就下载过的文件,躺在我的移动硬盘上。
好了,安装 KB925336 并 Reset 系统后,经过超级漫长的等待,SP1 安装成功了!!!
安装VS2005 SP1遭遇1719错误
因为装VS2005 太费时间了,我重启系统后通过远程桌面登录系统又开始安装,结果提示:1719 错误,无法访问Windows Install服务——又失败了!
这是因为凡是用到Windows Install服务的安装均不能在安全模式或非直接登录的系统中进行。重启后直接以Administrator身份正常登录本地系统,安装即可。
其它,若是Windows Installer服务的原因可参考下面的文章:
卸载,重新安装windows installer服务:
1 先用msiexec /unregserver 停掉windows installer服务。
2 下载InstMsiW.exe,用winrar解压开。进入目录。
3 右击msi.inf ,点击安装,右击mspatcha.inf ,点击安装。
4 再用msiexec.exe /regserver 启用服务。
不能访问 Windows Installer 服务
Afly | 2005-11-27
如果你的系统是 WinXP,在安装 Office2003 时出现了“不能访问 Windows Installer 服务,可能是你在安全摸式下运行 Windows 或 Window Installer 没有正确安装”错误(实际上是所有使用 Windows Installer 服务安装的 MSI 格式程序均不能正常安装);在“服务”里查看“Windows Installer ”服务的状态,一般为停用,当你试图启用此服务,会发现此服务已被系统禁用,或则 Windows Installer 服务已被标记为删除;而当你尝试重新安装 Windows Installer 服务时,系统提示“指定的服务已存在”——那这篇文章就是你想要的了。
解决方法(在 WinXP/Win2000 上通过):
先用记事本编写如下内容,并保存为 installer.reg 格式文件,双击将文件导入注册表;
运行“CMD”命令提示符,输入“msiexec /regserver”并回车;
无须重新启动,即刻搞掂!
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMSIServer]
"ImagePath"=-
"ImagePath"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,
74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,6d,
00,73,00,69,00,65,00,78,00,65,00,63,00,2e,00,65,00,78,00,65,00,20,00,2f,00,
56,00,00,00
; ImagePath = %SystemRoot%System32msiexec.exe /V
另外,你若遇到2908号错误,你就倒大霉了,很多相关和不相关的东西都会不能用了。网上也有一些解决方案,但都不如重装机来的快,我现在就在不得不重装机中,因为我按照微软提供的方案,先卸载VS2005,当我卸载时居然提示无法卸载,多次重试仍这样,无奈重装,惨啊,该死的M$,你与生俱来就是为了折磨你大爷我吗?
微软对2908号错误的解决方案(一般情况没有6小时你搞不定):
A.删除VS2005
B.删除.NET FRAMEWORK 2.0
C.删除%windir%WinSxS 下的 Policies 文件夹
D.安装.NET Framework 2.0
E.安装VS2005 & SP1
详见:http://forums.msdn.microsoft.com/en-US/vssetup/thread/6a3e71fd-b776-4124-8c96-21bb7e7d6abb/
以上就是我安装过程中遇到的问题,这些都被我碰到了,每次重新安装都花费我3个小时以上,你说我是不是点笨啊!
以下是安装注意事项:
1.安装时间会非常长,如果机器配置不是很高的话需要2个小时以上,一般的话也需要1个小时左右所以请耐心等待。
2.安装前检查你的c盘是否有大于3G的空余空间,因为安装的时候会释放很多临时文件在c盘,如果不能保证大于3g的话可能会发生异常错误,不过我在安装的时候没有占用3G这么恐怖,不过也起码占用了1G多的空间。
3.如果你以前安装过web application project,在安装vs2005 sp1以前请先把他卸载,不然不能成功安装vs2005 sp1
4.VS2005 SP1 的补丁包是把你机器上所有单独装过vs2005的版本的补丁都打上,如果机器上装了Visual Web Developer Express和Visual Studio team sutie,那么他就要运行安装补丁两次.
安装步骤:
一.解决数字签名认证的问题
1. 单击“开始”->单击"运行",键入"secpol.msc", 然后单击"确定"。
2. 双击“本地安全策略”。
3. 单击”软件限制策略“。
注意,如果列出,没有软件限制,右键单击"软件限制策略", 然后单击"新建策略"。
4. 在对象类型中, 双击"强制"。
5. 单击“除本地管理员以外的所有用户”, 并单击“确定”。
6. 重新启动计算机。
二.执行批处理文件来安装
reg export HKLMSoftwarePoliciesMicrosoftWindowsInstaller installer.reg
reg add HKLMSoftwarePoliciesMicrosoftWindowsInstaller /v MaxPatchCacheSize /t REG_DWORD /d 0 /f
net stop msiserver
start /wait VS80sp1-KB926604-X86-CHS.exe
reg delete HKLMSoftwarePoliciesMicrosoftWindowsInstaller /v MaxPatchCacheSize /f
reg import installer.reg
net stop msiserver
del /q installer.reg 2>nul
上面的保存为InstallVS2005SP1.bat,再执行该文件以启动安装补丁,并可禁用缓存。