之后某天,同样的一幕再次上演,我用了两个半天的时间找到了原因,都是instmsia.exe(版本2.0.2600.1)惹的祸。
对于这个文件,我说两句,这个文件是微软自己的windows程序安装向导的新版本,英文名是Windows Installer (MSI支持)。如果你使用的是windows me,系统中已经安装了某个版本的支持MSI的安装向导程序,但是如果你使用的是win98,那么你就需要升级到MSI支持,否则使用了MSI支持的软件将不能安装。有时这种升级是自动进行的,所以你并不会察觉。
还有,并不是每个版本的Windows Installer (MSI支持)都会出现上面的问题,比如版本1.10.1029.1。但是版本2.0.2600.1已经出现问题,下面就解决它。
通过各种跟踪,发现问题只出在注册表上,[HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\OID\EncodingType 0\CryptSIPDllIsMyFileType2]就是问题关键,删除之,便可以解决,建议大家建立一个注册表文件,在REGEDIT4下面只要一行[-HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\OID\EncodingType 0\CryptSIPDllIsMyFileType2](注意前面是减号)就可以搞定。
(出处:http://www.sheup.com)