c#-使用InstallShield LE时,msi包含一个程序集的过时版本,而其他程序集的当前版本

我在大约有10个项目的解决方案中使用Visual Studio 2010,InstallShield LE.

我已经为“文件”部分选择了主GUI的主项目输出,该输出已安装到Program Files的子目录中,非常标准.

几周前,我构建了安装程序,并将其安装在测试机上,一切正常.从那时起,我对解决方案中的每个项目进行了更改.今天,我增加了装配体版本并重建了安装项目以继续测试.

安装后,在程序文件的安装目录中,我注意到项目的一个程序集仍列出了以前的版本1.0.0.0,并且文件日期已超过一个月.目录中的其他程序集显示当前版本和当前修改日期.

我尝试删除解决方案目录中的每个bin和obj文件夹以及安装程序项目文件夹.我重新安装了,但问题仍然存在.

我搜索了google,但是由于问题很奇怪,所以很难找到一个好的搜索词组.

显然,我需要将程序集的最新版本包含在安装程序msi中.

感谢您的帮助或建议!

解决方法:

您需要做两件事:在MSI中提取实际文件,以了解MSI中是否存在更新的二进制文件,并获得详细的安装日志,以查找Windows Installer对包含相关程序集的组件的说明.顺便说一句,您有每个程序集文件作为其自己组件的密钥文件,不是吗? Windows Installer仅检查其路径的版本更新.

上一篇:ASP.NET 打包发布中没有Visual Studio Installer


下一篇:可以在Ant中修改Linux文件权限