作者:朱金灿

 

         昨天摸索了一下,发现使用VS安装项目来打包软件还是挺方便的。


1. 创建一个安装项目工程,如下图:

利用VS安装项目打包软件的做法_VS安装项目

2. 设置工程属性,如下图:

利用VS安装项目打包软件的做法_VS安装项目_02

利用VS安装项目打包软件的做法_应用程序_03

在系统必备对话框中选择软件运行所必需的系统组件,VC++编译软件需要vcredist_x86和WindowsInstaller3_1,如下图:

利用VS安装项目打包软件的做法_快捷方式_04

3. 安装项目中包含三个虚拟文件夹:应用程序文件夹、用户的“程序”菜单和用户桌面,如下图:

利用VS安装项目打包软件的做法_应用程序_05

应用程序文件夹对应的是你所安装软件的目标文件夹,用户的“程序”菜单就是用户机子上的开始菜单所呈现的内容,用户桌面就是用户机子上桌面对应的快捷方式。

你可以拖拽你的待压缩的文件夹到应用程序文件夹节点,当然也可以使用右键菜单添加,如下图:

利用VS安装项目打包软件的做法_快捷方式_06

添加后的效果如下图:

利用VS安装项目打包软件的做法_应用程序_07

4. 添加用户的“程序”菜单,具体是在用户的“程序”菜单下添加一个文件夹:我的软件:

利用VS安装项目打包软件的做法_VS安装项目_08

“在应用程序文件夹”中的.exe文件中,点击右键,创建快捷方式:

利用VS安装项目打包软件的做法_VS安装项目_09

利用VS安装项目打包软件的做法_右键_10

重命名“串口测试程序”,然后点击右键属性:选择Icon

利用VS安装项目打包软件的做法_快捷方式_11

双击进入选择我们之前添加的“MiXer.ico”

利用VS安装项目打包软件的做法_快捷方式_12

确定后,拖动此快捷方式到“我的软件下”。


接着给应用程序创建一个卸载程序:将C:\Windows\System32\Msiexec.exe拷贝到你的应用程序目录下,然后在把它添加到“应用程序文件夹”下的bin节点下,右键创建快捷方式,重命名为:卸载,把此快捷方式拖动到“串口程序”;

利用VS安装项目打包软件的做法_快捷方式_13

点击项目名称(Setup1),在属性中找到:ProductCode

利用VS安装项目打包软件的做法_VS安装项目_14

复制此ProductCode ,粘贴到“卸载”快捷方式的Arguments属性,前面加/x空格

利用VS安装项目打包软件的做法_VS安装项目_15

     网上的说法是直接在bin节点添加C:\Windows\System32\Msiexec.exe(省去了我说的拷贝C:\Windows\System32\Msiexec.exe到我的输出文件夹一步),这样做是有问题的,在生成是会出现一个警告:应将“卸载PIEGeoImage”排除,原因是其源文件“C:\WINDOWS\system32\msiexec.exe”受到“Windows 系统文件保护”。生成后的卸载程序并不能用。


4. 添加用户桌面,参考第四步创建一个exe的快捷方式,然后拖拽到用户桌面节点下即可。


    安装完在开始菜单中有“串口程序”的文件夹,里面有我们创建的两个快捷方式;

利用VS安装项目打包软件的做法_软件打包_16

桌面上也有快捷方式:

利用VS安装项目打包软件的做法_VS安装项目_17