由于Windows 7自带了.NET Framework 3.5 SP1还有其它一些原因, 所以在安装VS 2008 SP1的时候会发生fatal error during installation的错误,经过网上查找及实验触决这一问题有两种方法:办法一是改安装脚本ParameterInfo.xml绕过语言包的安装;办法二是安装到该包时骗过安装程序返回成功结果就可以.
办法一:
将SP1的ISO文件解压缩出来, 找到ParameterInfo.xml文件, 定位到
<Exe Name="dotnetfx35.exe" URL="http://go.microsoft.com/fwlink/?LinkId=119353&clcid=0x409" DownloadSize="242743296" SystemDriveSize="859390404" InstalledProductSize="0" InstallCommandLine="/q /norestart /lang:ENU" UninstallCommandLine="/q /uninstall" CanonicalTargetName="#(loc.dotnetfx35sp1)" 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="0582515BDE321E072F8673E829E175ED2E7A53E803127C50253AF76528E66BC1">
<ApplicableIf>
<GreaterThan LeftHandSide="3.5.30729.01" BoolWhenNonExistent="true">
<RegKeyValue Location="HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/NET Framework Setup/NDP/v3.5/Version" />
</GreaterThan>
</ApplicableIf>
</Exe>
<Exe Name="dotnetfx35.exe" URL="http://go.microsoft.com/fwlink/?LinkId=119353&clcid=0x409" DownloadSize="242743296" SystemDriveSize="859390404" InstalledProductSize="0" InstallCommandLine="/q /norestart /lang:ENU" UninstallCommandLine="/q /uninstall" CanonicalTargetName="#(loc.dotnetfx35sp1)" 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="0582515BDE321E072F8673E829E175ED2E7A53E803127C50253AF76528E66BC1">
<ApplicableIf>
<GreaterThan LeftHandSide="3.5.30729.01" BoolWhenNonExistent="true">
<RegKeyValue Location="HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/NET Framework Setup/NDP/v3.5/Version" />
</GreaterThan>
</ApplicableIf>
</Exe>
删除该节点。 如果是中文的visual studio, 还有语言包。保存文件,最后再次运行SPInstall.exe。问题就解决了
办法二:
首先把SP1的所有文件复制到硬盘上,打开vs90sp1文件夹,然后复制一份该文件夹下的VC_x86Runtime.exe改名 dotnetfx35langpack_x86zh-CHS.exe替换该目录的dotnetfx35langpack_x86zh-CHS.exe,然后再运行SPInstaller.exe安装即可。
补充:
折腾了一天,最后原因(个人觉得)是出在.net framework 3.0 sp1上面。一直安装sp2失败,所以就用。net framwork cleanup tool 删除掉了3.0版本,然后再重新安装上的3.5的sp1,因为我要用MsChart控件。所以必须解决这个问题,希望对大家有所帮助。
清除软件名:dotnetfx_cleanup_tool.zip 下载链接:http://www.oyksoft.com/downinfo/7999.html