今天在安装Windows Mobile 6 Professional SDK Refresh.msi 的时候,碰到一个错误"文件被数字签名策略拒绝(File was rejected by digital signature policy) ",可能在安装 Visual Studio 2005 SP1 的时候,也有人碰到过这个错误.
这个错误产生的原因是:"当运行安装程序时,Windows Installer 会验证程序包的数字签名以确保程序包没有被篡改。这时整个程序包被加载到内存中,计算机必须拥有程序包大小所需的足够连续内存。如果计算机没有足够的连续内存,则会出现错误。由于出现错误,Windows Installer 将无法验证是否对该程序包正确地进行了签名。"
所以这个问题呢应该只会出现在内存比较少的电脑,比如我的只有1G内存,所以承受不起这个454.7 MB的SDK,就出现了这个恼人的问题.
解决方法:
1.修改 HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Safer\CodeIdentifiers 注册表项下面的 PolicyScope 的注册表值,将值从0改为1 (附件:SetPolicyScope.reg)
2.在cmd中,运行 net stop msiserver,关闭Window Installer服务. (附件:stop_msiserver.bat)
3. 运行安装程序
4.修复PolicyScope.(附件:ResetPolicyScope.reg)
如果你嫌麻烦,可以下载我写好的reg和bat文件wm6_sdk_reg.zip
MS Support: http://support.microsoft.com/kb/925336
这个错误产生的原因是:"当运行安装程序时,Windows Installer 会验证程序包的数字签名以确保程序包没有被篡改。这时整个程序包被加载到内存中,计算机必须拥有程序包大小所需的足够连续内存。如果计算机没有足够的连续内存,则会出现错误。由于出现错误,Windows Installer 将无法验证是否对该程序包正确地进行了签名。"
所以这个问题呢应该只会出现在内存比较少的电脑,比如我的只有1G内存,所以承受不起这个454.7 MB的SDK,就出现了这个恼人的问题.
解决方法:
1.修改 HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Safer\CodeIdentifiers 注册表项下面的 PolicyScope 的注册表值,将值从0改为1 (附件:SetPolicyScope.reg)
2.在cmd中,运行 net stop msiserver,关闭Window Installer服务. (附件:stop_msiserver.bat)
3. 运行安装程序
4.修复PolicyScope.(附件:ResetPolicyScope.reg)
如果你嫌麻烦,可以下载我写好的reg和bat文件wm6_sdk_reg.zip
MS Support: http://support.microsoft.com/kb/925336
分类: Windows Mobile
标签: Windows Mobile
本文转自浪子博客园博客,原文链接:http://www.cnblogs.com/walkingboy/archive/2008/04/27/WM6_SDK_Install_Digital_Signature.html,如需转载请自行联系原作者