[04/26/08,10:31:57] Microsoft .NET Framework v3.5:
Error code 1603 for this component means \"安装时发生严重错误
\"
[04/26/08,10:31:57] Microsoft .NET Framework v3.5:
Setup Failed on component Microsoft .NET Framework v3.5
.
这个是说在安装Framework 3.5的时候发生1603错误了,其实1603错误时一个非常抽象的错误,“安装过程中发生严重错误”。所以根据这个错误来追踪错误到底是什么可以说不太可能。
利用google搜索了一下,从msdn博客上找到一篇文章,想看原文的可以点击How to locate the cause of error code 1603 in a verbose MSI log file。
其实解决方案很简单,在当前用户的temp文件夹下面(如果是xp和2000是在Document Setting/{用户名}/Application Data/Local/Temp,如果是Vista是在用户/{用户名}/AppData/Local/Temp,当然上面都是默认的用户零时文件夹,如果你修改了但是你又忘了你定位到那里了,可以利用命令行echo %temp%查看一下零时文件夹是那个目录)找到你安装的log文件,我用的是vista,安装的的log文件名是dd_NET_Framework35_MSIXXX.txt(其中XXX是一个三位数子),利用记事本或者是其他工具打开文件,查找Return Value 3,找到之后查看这之上的几行里面就有相应的错误记录。
比如说我这里面的错误:
DDSet_Status: CFileHelper::CopyConfigFilesToTempLocation
DDSet_Error: CFileHelper::CheckIsWriteable
GetFileAttributes failed for file C:\\Windows\\Microsoft.NET\\Framework\\v2.0.50727\\config\\machine.config. GetLastError returned 0x2
DDSet_Error: CFileHelper::CheckIsWriteable
C:\\Windows\\Microsoft.NET\\Framework\\v2.0.50727\\config\\machine.config File not found
.net framework 2.0的machine.config配置文件找不着,我将默认配置文件拷贝一份,修改后缀名。然后重新执行安装操作,一切OK。
总结:
其实解决Windows Installer安装错误1603的错误很简单,找到相应的安装log文件,定位到return value 3的前几行,找到错误,解决问题,然后重新安装,就OK了。