在英文的windows 2008下安装vs 2008中文版补丁的失败的解决方法
在英文版的windows 2008 server上安装中文版的vs 2008的sp1失败后,查阅了相关资料,得到如下结论:
- 英文版的操作系统最好安装英文版的大型软件,否则兼容性可能会有问题;
- 补丁安装失败的原因正是语言包不兼容所造成的。
解决方法参见:
http://blog.csdn.net/yaohuisoft/archive/2010/12/27/6101342.aspx
这篇博文写的比较啰嗦。就我遇到的问题,我总结的方法如下:
1. 将sp1安装目录拷贝到硬盘上;2. 在安装目录vs90sp1下,找到文件ParameterInfo.xml,用可以编辑xml的软件打开;
3. 利用CTRL+F,找到:
<Exe Name="dotnetfx35langpack_x86zh-CHS.exe" URL="http://go.microsoft.com/fwlink/?LinkId=118146&clcid=0x409" DownloadSize="28694568" SystemDriveSize="12273504" InstalledProductSize="0" InstallCommandLine="/q /norestart" UninstallCommandLine="/q /uninstall /norestart" CanonicalTargetName="#(loc.dotnetfx35lp)" ExeType="Cartman" LogFileHint="%temp%\dd_dotnet*.txt|%temp%\dd_net_framework*.txt|%temp%\dd_depcheck*.txt|%temp%\..\dd_dotnet*.txt|%temp%\..\dd_net_framework*.txt|%temp%\..\dd_depcheck*.txt" HashValue="354EF066A4CF16B9CC0B2F46072120B2FE5A5058947969901F8A157AAFF99351"> <ApplicableIf> <And> <Equals LeftHandSide="x86" BoolWhenNonExistent="false"> <TargetArchitecture /> </Equals> <GreaterThan LeftHandSide="3.5.30729.01" BoolWhenNonExistent="true"> <RegKeyValue Location="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5\2052\Version" /> </GreaterThan> </And> </ApplicableIf> </Exe> <Exe Name="dotnetfx35langpack_x64zh-CHS.exe" URL="http://go.microsoft.com/fwlink/?LinkId=118151&clcid=0x409" DownloadSize="34967080" SystemDriveSize="17534816" InstalledProductSize="0" InstallCommandLine="/q /norestart" UninstallCommandLine="/q /uninstall /norestart" CanonicalTargetName="#(loc.dotnetfx35lp)" ExeType="Cartman" LogFileHint="%temp%\dd_dotnet*.txt|%temp%\dd_net_framework*.txt|%temp%\dd_depcheck*.txt|%temp%\..\dd_dotnet*.txt|%temp%\..\dd_net_framework*.txt|%temp%\..\dd_depcheck*.txt" HashValue="4CC0A5EA3E1497BA6B7C006CC57C0A686282DF02EC4E5B0EBDBC9F0B2E4728B5"> <ApplicableIf> <And> <Equals LeftHandSide="x64" BoolWhenNonExistent="false"> <TargetArchitecture /> </Equals> <GreaterThan LeftHandSide="3.5.30729.01" BoolWhenNonExistent="true"> <RegKeyValue Location="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5\2052\Version" /> </GreaterThan> </And> </ApplicableIf> </Exe>
通过以上方法,不运行和语言包有关的安装程序,可以解决上述兼容性问题。另外,不要迷信微软啊,以后在英文版的操作系统还是老老实实地装英文版的开发工具好了。