我正在使用Visual Studio 2010,在解决方案上安装屏蔽芯片LE,其中包含大约10个项目。

我已经为“文件”部分选择了主GUI的主项目输出,安装到程序文件的子目录,漂亮的标准。

我几个星期前建立了安装程序并在我的测试机器上安装了它,一切都在正常工作。从那时起,我已经对解决方案中的每个项目进行了更改。今天,我递增了我的装配版本并重建我的安装项目继续测试。

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

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

我搜索了谷歌,但由于问题是奇数,一个很好的搜索短语一直难以捉摸。

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

感谢您的任何帮助或建议!

有帮助吗?

解决方案

您需要执行两件事:提取MSI中的实际文件以了解更新的二进制文件是否在MSI中,并获取安装的冗长日志,查找Windows Installer对包含该程序集的组件的内容有问题。BTW,您将每个装配文件作为自己组件的关键文件,不是吗?Windows Installer仅检查他们路径的版本更新。

其他提示

你想要读:

默认文件版本控制

注意:确保您正在比较汇编文件。它不是汇编version属性,而不是汇编文件属性。前者被GAC和强名称合同使用,而后来地图到Windows本机FileVersion结构。

我以前对VS设置项目进行了相同的问题。我会仔细检查与旧DLL项目的解决方案中的装配引用。您只能查看“属性”窗口以查看它引用的版本。在我的情况下,它将引用另一个项目的bin文件夹的dll,而不是项目本身。

我知道你删除了所有的bin和obj文件夹,但它可能值得一试。

如果找到问题引用,只需删除并重新添加它,您应该是好的。

转储安装屏幕并使用 wix ..你永远不会回头。

wix有e.g.uchadadecode帮助您控制要在功能上检查版本。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top