今天解决了一个大问题,VBox不能安装,每次安装都说:
The older version of Oracle VM VirtualBox 4.2.18 cannot be removed. Contact your technical support group.
更诡异的是,不管安装什么版本的VBOX都是这个样子,试了很多方法,清理注册表,删除文件,ProcMon。。。。。
百度,google了很多,也没有直接解决方法。
后来看到一篇文章,说命令行后加-l,生成日志,分析日志,运行后,果然发现日志有记录,
MSI (s) (BC:38) [18:55:29:697]: Dir (target): Key: dir_Drivers, Object: C:\Program Files\Oracle\VirtualBox\drivers\
MSI (s) (BC:38) [18:55:29:697]: Dir (target): Key: dir_Network, Object: C:\Program Files\Oracle\VirtualBox\drivers\network\
MSI (s) (BC:38) [18:55:29:697]: Dir (target): Key: dir_NetAdp, Object: C:\Program Files\Oracle\VirtualBox\drivers\network\netadp\
MSI (s) (BC:38) [18:55:29:697]: Dir (target): Key: dir_NetFlt, Object: C:\Program Files\Oracle\VirtualBox\drivers\network\netflt\
MSI (s) (BC:38) [18:55:29:697]: Dir (target): Key: dir_USB, Object: C:\Program Files\Oracle\VirtualBox\drivers\USB\
MSI (s) (BC:38) [18:55:29:697]: Dir (target): Key: dir_USBDevice, Object: C:\Program Files\Oracle\VirtualBox\drivers\USB\device\
MSI (s) (BC:38) [18:55:29:697]: Dir (target): Key: dir_USBFilter, Object: C:\Program Files\Oracle\VirtualBox\drivers\USB\filter\
MSI (s) (BC:38) [18:55:29:697]: Dir (target): Key: dir_VBoxDrv, Object: C:\Program Files\Oracle\VirtualBox\drivers\vboxdrv\
MSI (s) (BC:38) [18:55:29:697]: Dir (target): Key: dir_Documents, Object: C:\Program Files\Oracle\VirtualBox\doc\
MSI (s) (BC:38) [18:55:29:698]: Note: 1: 2205 2: 3: MsiAssembly
MSI (s) (BC:38) [18:55:29:698]: Note: 1: 2228 2: 3: MsiAssembly 4: SELECT `MsiAssembly`.`Attributes`, `MsiAssembly`.`File_Application`, `MsiAssembly`.`File_Manifest`, `Component`.`KeyPath` FROM `MsiAssembly`, `Component` WHERE `MsiAssembly`.`Component_` = `Component`.`Component` AND `MsiAssembly`.`Component_` = ?
Action ended 18:55:29: CostFinalize. Return value 1.
MSI (s) (BC:38) [18:55:29:700]: Doing action: RemoveExistingProducts
Action 18:55:29: RemoveExistingProducts. Removing applications
Action start 18:55:29: RemoveExistingProducts.
RemoveExistingProducts: Application: {948B09C2-16EF-41DC-8E24-5C90B9D8360F}, Command line: UPGRADINGPRODUCTCODE={2C00465A-EA83-4D9B-9482-9180FBEBD4AC} CLIENTUILEVEL=0 REMOVE=ALL
MSI (s) (BC:84) [18:55:29:703]: Resetting cached policy values
MSI (s) (BC:84) [18:55:29:703]: Machine policy value 'Debug' is 0
MSI (s) (BC:84) [18:55:29:703]: ******* RunEngine:
******* Product: {948B09C2-16EF-41DC-8E24-5C90B9D8360F}
******* Action:
******* CommandLine: **********
MSI (s) (BC:84) [18:55:29:703]: Using cached product context: machine assigned for product: 2C90B849FE61CD14E842C5099B8D63F0
MSI (s) (BC:84) [18:55:29:703]: Using cached product context: machine assigned for product: 2C90B849FE61CD14E842C5099B8D63F0
MSI (s) (BC:84) [18:55:29:704]: Using cached product context: machine assigned for product: 2C90B849FE61CD14E842C5099B8D63F0
MSI (s) (BC:84) [18:55:29:704]: Using cached product context: machine assigned for product: 2C90B849FE61CD14E842C5099B8D63F0
MSI (s) (BC:84) [18:55:29:704]: Using cached product context: machine assigned for product: 2C90B849FE61CD14E842C5099B8D63F0
MSI (s) (BC:84) [18:55:29:704]: Using cached product context: machine assigned for product: 2C90B849FE61CD14E842C5099B8D63F0
MSI (s) (BC:84) [18:55:29:704]: Warning: Local cached package 'C:\Windows\Installer\4d9272b.msi' is missing.
MSI (s) (BC:84) [18:55:29:704]: Using cached product context: machine assigned for product: 2C90B849FE61CD14E842C5099B8D63F0
MSI (s) (BC:84) [18:55:29:704]: Using cached product context: machine assigned for product: 2C90B849FE61CD14E842C5099B8D63F0
MSI (s) (BC:84) [18:55:29:704]: 在项 HKLM\Software\Classes\Installer\Products\2C90B849FE61CD14E842C5099B8D63F0\SourceList 中出现意外值或缺少值: (名称: PackageName,值: )
CustomAction returned actual error code 1610 (note this may not be 100% accurate if translation happened inside sandbox)
MSI (s) (BC:38) [18:55:29:705]: Note: 1: 1714 2: Oracle VM VirtualBox 4.2.18 3: 1610
Error 1714. The older version of Oracle VM VirtualBox 4.2.18 cannot be removed. Contact your technical support group. System Error 1610.
MSI (s) (BC:38) [18:55:48:984]: Product: Oracle VM VirtualBox 4.2.18 -- Error 1714. The older version of Oracle VM VirtualBox 4.2.18 cannot be removed. Contact your technical support group. System Error 1610.
看到上面的提示,不言而喻了,把注册表项删除,就能安装了。