VS 制作安装包小窥
难得忙里偷闲,看到有关VS制作安装包,按下文小试一把,还行,比不上Installshield。
首先在打开 VS2010 》 文件 》新建项目

创建一个安装项目 XXX
在“目标计算机上的文件系统”下我们看见 应用程序文件夹,用户程序菜单 ,用户桌面 , 在 应用程序文件夹 右击添加文件夹(即安装后所在安装路径下生成的包含程序相关组件的文件夹)
本列中添加了 测试安装程序文件夹 ,在 测试安装程序文件夹 上右击 ,选择 添加,根据项目需要 ,将所有程序所需要的组件都添加进去,本例中 将XXX.exe ,XXX.dll ,图标等文件添加
要实现卸载功能的话,需要将 C:\Windows\System32\msiexec.exe 程序也添加到 测试安装程序文件夹 中,然后在进一步操作
接下来,分别给主程序 XXX.exe 和 msiexec.exe 建快捷方式
同理在 用户程序菜单 中添加一个文件夹 ,并将 XXX.exe 和 msiexec.exe 的快捷方式 剪切到 该文件夹下,这样在用户点击 开始 菜单 后 就会看见我们安装程序的文件,提供了运行程序的快捷方式和卸载该程序的快捷方式。

接下来设置卸载程序的参数 :在 解决方案下 ,单击该安装项目名称 ,进入其 属性 页面 ,找到其 ProductCode 的属性值,将属性值复制下,本例中该属性值为:{226D41BC-A197-41B0-9156-2EC489089D99} (即本安装软件的ID)

然后在 卸载程序所建的快捷方式 的属性页上 的 Arguments 属性项 ,将其值赋值为 :/x{226D41BC-A197-41B0-9156-2EC489089D99} ,/x 为命令 ,后面跟此安装的软件的ID ,这样,卸载程序才能知道运行时该卸载那个软件。

最后,在 用户桌面 添加 主程序的 快捷方式

最后我们还要设置一下相关属性,由于次软件是在.Net 下开发的,所以如果目标计算机上并没有安装相应的.Net 库文件,则安装后程序仍然无法运行,因此,需要设置此安装程序的属性,选中此安装程序,右击 ,进入 属性 页面。

单击 系统必备

程序会自动识别所需要的.Net库文件和安装程序,默认即可,在 指定系统必备组件的安装位置 选项,第一项的意思是,在安装时,若目标计算机没有.Net库文件的话,安装程序将提示用户从网上下载相应的.Net库文件。第二项的意思是 ,直接从本地计算机上将相应的.Net库文件拷贝到 此安装程序的 Debug 目录下,在目标计算机安装时,若安装程序检测到计算机未安装.Net库文件,则先安装.Net库文件,再安装该软件,无需下载.Net库文件。 因此我的程序中选择第二项,单击 确定。

最后 生成该安装包, 在Debug 目录下 找到 setup.exe 文件即是我们的安装包。
最基本的安装程序就是这些,如果复杂的大型应用可能涉及到 注册表及启动条件,安装引导界面等属性的设置,我们在 安装程序 右击 选择 视图 ,可以在里面进行相关设置。
使用Installshield时,遇到过文件无权限修改,VS也是存在,按照下文处理:
问题:在本地计算机上可以实现对应用程序的初始化配置,但在裸机上安装程序后,无法进行初始化配置,程序报错:对路径“×××”访问拒绝 ;一查,是权限问题,在逻辑上一
普通用户的身份,运行程序是无法获取操作配置文件的权限。在网上搜了下解决方法,如下:
首先打开 项目的属性页 进入 “ 安全性 ” 一栏 ,勾选 “启用ClickOnce安全设置”

接下来会发现在 解决方案中的 Properties 中发现 app.manifest 文件,

双击 打开 该文件
然后 再将 “启用ClickOnce安全设置” 取消勾选 ,重新编译 程序即可,经过修改后的程序,在安装后运行是以管理员身份运行,就不存在 拒绝访问的问题了。
VS 制作安装包小窥的更多相关文章
- 循序渐进做项目系列(5):制作安装包,谁人都可以!——VS制作安装包简明教程
一开始让我做安装包的时候,其实我是拒绝的.因为我根本就不会做安装包.查了资料之后,我很懵,很晕,很乱,因为不清晰,不简明,不直白.然而经过一番彷徨的挣扎,我终于发现:制作安装包,谁人都可以!故挥狼毫, ...
- 使用Qt installer framework制作安装包
一.介绍 使用Qt库开发的应用程序,一般有两种发布方式:(1)静态编译发布.这种方式使得程序在编译的时候会将Qt核心库全部编译到一个可执行文件中.其优势是简单单一,所有的依赖库都集中在一起,其缺点也很 ...
- 【原创】VB6.0应用程序安装包的生成(Setup Factory 9.0制作安装包的方法)
VB6.0应用程序安装包的生成,利用其自带的打包工具生成的安装程序很简陋,一点不美观:如果想让自己的应用程序安装的时候显得高大上一点,本教程提供使用Setup Factory 9.0制作安装包的方法. ...
- vs2015 制作安装包额外需要安装的软件VSI_bundle
vs2015 制作安装包额外需要安装的软件VSI_bundle 下载地址:http://files.cnblogs.com/files/sdner/VSI_bundle.rar
- Wix制作安装包
Wix制作安装包,找起资料来很费劲,记录一下: Product.wxs,该文件只能制作出msi形式的安装包,不能做到自动检测framework. <?xml version="1.0& ...
- [转载]如何用Visual Studio制作安装包
原文地址:如何用Visual Studio制作安装包作者:蓝羽幽游 环境:Microsoft Visual Studio 2010 语言:C# 构架:.NET Framework 2.0 解决方案名称 ...
- VS vs2012制作安装包
VS vs2012制作安装包 一.参考地址: http://www.3fwork.com/b100/000196MYM014103/
- 为自己编写的windows应用程序制作安装包
1 写好了一个windows程序之后如何制作安装包 这个在vs中就可以直接发布了,可以制作msi的安装包和exe的安装包. 2 window应用程序安装包做了哪些事情 rpm安装包的话,只是把相应的文 ...
- 使用Qt installer framework制作安装包(不知道是否适合Mac和Linux?)
一.介绍 使用Qt库开发的应用程序,一般有两种发布方式:(1)静态编译发布.这种方式使得程序在编译的时候会将Qt核心库全部编译到一个可执行文件中.其优势是简单单一,所有的依赖库都集中在一起,其缺点也很 ...
随机推荐
- jQuery慢慢啃之事件(七)
1.ready(fn)//当DOM载入就绪可以查询及操纵时绑定一个要执行的函数. $(document).ready(function(){ // 在这里写你的代码...}); 使用 $(docume ...
- python - StringIO文本缓冲
参考:http://pymotwcn.readthedocs.org/en/latest/documents/StringIO.html 类StringIO提供了一个在内存中方便处理文本的类文件(读, ...
- HTML5 表单与文件
-新增元素与属性 form.formaction.formmethod.placeholder(处于未输入状态时文本框显示的输入提示).autofocus(自动获取光标焦点).list(该属性的值为某 ...
- JQUERY1.9学习笔记 之属性选择器(二) 包含选择器
jQuery("[attribute*='value']") 描述:选择所有与给定值匹配的属性值的标签. 例:找出所有name属性包含"man"的input标签 ...
- var a =a || {}
- PHP与MYSQL配合完成IP的存取
如何存储IP 程序设计要在功能实现的基础上最大限度的优化性能.而数据库设计是程序设计中不可忽略的重要部分,巧存IP地址可以一定程度提升性能. 利用函数算法处理 MySQL没有直接提供IP类型字段,但有 ...
- 转:Google技术开发指南:给大学生自学的建议
原文来自于:http://blog.jobbole.com/80621/ 技术开发指南 想要成为成功的软件工程师,必须拥有坚实的计算机科学的基础.本指南针对大学生,给出一条自学途径,让学生以科班和非科 ...
- Unity3D Quaternion各属性和函数测试
Quaternion属性与方法 一,属性: x.y.z就不说了,只看一个eulerAngles,代码如下: public Quaternion rotation = Quaternion.identi ...
- Eclipse maven git
http://www.blogjava.net/youxia/archive/2013/12/29/408182.html
- Android Wear开发 - 数据通讯 - 第零节 : 打包Wear应用(手机和手表应用如何连接)
之所以将打包这一特殊的内容作为数据通讯的第零节,是因为如果没有通过配置打包的一些信息,则没有办法将手机端应用和手表端应用连接起来,则无法继续进行接下来的数据通讯的开发. 以下依然只针对Eclipse平 ...