最近一个项目中需要从网站上下载控件到客户端安装,但程序结构中有子目录,所以没有使用传统的cab方式打包,而是做成了windows install项目进行安装。但在新版本安装时并没有更新老版本的ocx文件,其它文件好像还正常。反复测试后没有找到原因和合适的方法。在阅读MSDN文档时,发现:
注:文中的misexec实际应为msiexec
通过该命令记录下了日志信息,并在日志文件中找到了如下片段信息:
原来在需要拷贝ocx时,竟然“Won't overwrite”!!,根据前面一行的信息,最后证实是需要将该ocx的版本号进行升级。在ocx版本号升级后重新制作install文件,一切正常!