新建打包项目后,解决方案资源管理器中的结构如下:

Project Assistant界面如下:

在Project Assistant中按照步骤创建打包项目:

1、Application Information 中填写公司名称、产品名称、版本号、网址的信息。

  Application Information 左侧窗口点击 General Information 中设置其他信息,主要配置如下:

(1)General -> Setup Language:设置安装语言

(2)General -> INSTALLDIR:设置安装路径

(3)General -> Fast Install:根据需要配置以便加速安装速度

  a、No system restore point is saved for this installation:没有为这个程序保存系统恢复点

  b、Perform only File Costing and skip checking other costs:仅执行文件花费和跳过检查其他成本

  c、Reduce the frequency of progress messages:降低进度条信息的频率

(4)Summary Information Stream -> Require Administrative Privileges:设置管理员权限

  将该项设为“Yes”。这样设置之后,用户就可以有管理员的权限去安装该安装文件了,避免用户在安装的时候出现权限不够的问题。

(5)Add or Remove Programs -> Disable Change Button, Disable Remove Button, Disable Repair Button,这三个至少要有一个选为“NO”,全部设为“YES”的话,则在控制面板中,对应的软件没有“更改/删除”的按钮可以点击,即在这里就卸载不了软件了。

2、Installation Requirements:选择程序运行的操作系统及需要的软件

  可选的软件有Adobe Reader、.NET Framework、IE、Office等

3、Installation Architecture:可配置全部安装,或是部分安装

4、Application Files:添加要打包的文件

  Destination Computer:右键 Show Predefined Folder 可选择需要的文件夹,例如Font文件夹,将字体文件加入该文件夹,安装时会自动安装字体。

  添加完文件后,全选文件,右击,选中“Always Overwrite”。否则有时会出现重新安装后,有些文件没有被覆盖。(InstallShield Limited edition没有这项权限)

  添加完文件后,还需要添加C:\Windows\System32\msiexec.exe,用于添加卸载程序的快捷方式。

5、Application Shortcuts:创建桌面和开始菜单的快捷方式

  点击左侧的Shortcuts,可配置快捷方式的属性信息。  

  卸载程序的快捷方式设置参数以实现卸载功能:Behavior -> Argument 设置为“/x {Product Code}”

6、Application Registry:添加注册表

7、Installation Interview:配置安装界面

  Do you want to display a License Agreement Dialog:配置License界面

  Do you want to prompt users to enter their Company Name and User Name:配置是否展示输入公司名称和用户名称的界面

  Do you want your uses to be able to modify the installation location:配置用户是否可以修改安装路径

  Do you want users to be able to selectively install only certain parts:配置用户是否可以选择安装的模块

  Do you want to give users the option to launch your application when the installation:配置用户是否可以在安装结束后选择启动应用程序

  点击左侧的 Dialogs 可详细配置安装界面是否显示及具体内容。

8、将需要的其他工具一起打包到安装程序中:解决方案中 Specify Application Data -> Redistributables 可选择要打包的程序

9、设置安装程序的生成路径及方式:解决方案中 Prepare for Release -> Releases

  CD-ROM:可生成 msi、exe 安装包。

  若Build -> Compression的值为UnCompressed,则完整的安装程序为program files文件夹+msi文件。

  若Build -> Compression的值为Compressed,则完整的安装程序为cab文件+msi文件。

  SingleImage:只能生成 exe 安装包,也可配置Build -> Compression。

  CD-ROM 或 SingleImage 中选择 Setup.exe -> InstallShield Prerequisites Location,设置为 Extract From Setup.exe

  安装程序的生成路径为:\Express\CD_ROM\DiskImages\DISK1 或 \Express\SingleImage\DiskImages\DISK1

  可在VS上方的工具栏中选择生成方式。

打包过程中碰到的问题:

1、程序中有一个项目添加上后,打包就会失败,后检查发现是一个类中有一下未使用的代码,屏蔽后就解决了。原因未知。

[System.Runtime.InteropServices.DllImport("user32.dll ")]
static extern IntPtr GetWindowDC(IntPtr hWnd); [System.Runtime.InteropServices.DllImport("user32.dll ")]
static extern int ReleaseDC(IntPtr hWnd, IntPtr hDC);

2、使用快捷方式卸载软件时,提示“安装程序必须更新在系统运行时无法更新的文件或服务。如果选择继续,将需要重新启动以安装程序。”,点击“确定”后,机器未重启,软件成功卸载。原因未知。

3、打包时要关闭打包程序下的DiskImages文件夹,否则会导致生成失败。

最新文章

  1. hdu 3951 - Coin Game(找规律)
  2. wpf下datagrid使用过程中需要注意的几点(一)
  3. 字符匹配算法之Boyer-Moore算法
  4. Design and Analysis of Algorithms_Introduction
  5. java 21 - 3 字符输入流
  6. C#多线程与异步的区别
  7. 证据对抗、证据链标准 z
  8. ubuntu下安装Matlab
  9. 使用C# 生成word记录
  10. eclipse中启动tomcat
  11. oc知道经纬度求位置
  12. npm install含义 及vue安装启动项目时报错解决及vue建项目时各文件间的依赖关系
  13. Entity Framework Core 之数据库迁移
  14. Jupyter Notebook 快捷键和技巧
  15. linux存储管理之磁盘阵列
  16. C++中的仿函数
  17. Python cmd中输入'pip' 不是内部或外部命令,也不是可运行的程序或批处理文件。
  18. py库: Selenium (自动化测试)
  19. C专家编程
  20. Elasticsearch与RDS比较

热门文章

  1. 如何使用github搜索需要的开源项目
  2. 本地jar添加到本地仓库 本地jar依赖无效问题
  3. Mybatis入门Demo(单表的增删改查)
  4. vue、element-ui 后台菜单切换重新请求数据
  5. SQL Server 2012 忘记sa用户处理方法
  6. .NET Core部署到linux(CentOS)最全解决方案,高阶篇(Docker+Nginx 或 Jexus)
  7. java之 Request
  8. Less中Css预处理器
  9. Java并发包源码学习系列:阻塞队列实现之PriorityBlockingQueue源码解析
  10. HTTP/2与HTTP/3的新特性