Windows installer 将Microsoft Installer输出重命名为当前版本

Windows installer 将Microsoft Installer输出重命名为当前版本,windows-installer,Windows Installer,我目前正在寻找一种方法来防止安装项目输出覆盖以前的版本。 也就是说,当建立一个安装项目时,它会替换Release/Debug文件夹中的任何内容,有没有办法将输出重命名为包含版本号或日期的内容,这样它就不会覆盖以前的文件,甚至不会为每个构建创建包含日期和时间的单独文件夹 我知道这可以通过PostbuildEvents来完成,但我就是不知道需要做什么 顺便说一下,这是visual Studio 2008。这比我想象的要难;PostBuild事件值不展开部署属性,我无法从命令行获取程序集版本 我提出的

我目前正在寻找一种方法来防止安装项目输出覆盖以前的版本。 也就是说,当建立一个安装项目时,它会替换Release/Debug文件夹中的任何内容,有没有办法将输出重命名为包含版本号或日期的内容,这样它就不会覆盖以前的文件,甚至不会为每个构建创建包含日期和时间的单独文件夹

我知道这可以通过PostbuildEvents来完成,但我就是不知道需要做什么


顺便说一下,这是visual Studio 2008。

这比我想象的要难;PostBuild事件值不展开部署属性,我无法从命令行获取程序集版本

我提出的解决方案是创建一个PostBuild事件,该事件将项目输出复制到一个文件名,该文件名是使用对%DATE%和%TIME%环境变量的子字符串求值构建的,以获得唯一的文件名。尝试一下:

复制“$(Builtoputpath)”“$(ProjectDir)您的项目名称%DATE:~-4%%日期:~-10,2%%日期:~-7,2%%时间:~0,2%%时间:~3,2%%时间:~6,2%.msi”

是的,拼写为“Builtoputpath”和3“t”s。谢谢微软