可贵忙里偷闲,看到有关VS制做安装包,按下文小试一把,还行,比不上Installshield。web
首先在打开 VS2010 》 文件 》新建项目安全
建立一个安装项目 XXX app
在“目标计算机上的文件系统”下咱们看见 应用程序文件夹,用户程序菜单 ,用户桌面 , 在 应用程序文件夹 右击添加文件夹(即安装后所在安装路径下生成的包含程序相关组件的文件夹)测试
本列中添加了 测试安装程序文件夹 ,在 测试安装程序文件夹 上右击 ,选择 添加,根据项目须要 ,将全部程序所须要的组件都添加进去,本例中 将XXX.exe ,XXX.dll ,图标等文件添加spa
要实现卸载功能的话,须要将 C:\Windows\System32\msiexec.exe 程序也添加到 测试安装程序文件夹 中,而后在进一步操做orm
接下来,分别给主程序 XXX.exe 和 msiexec.exe 建快捷方式ci
同理在 用户程序菜单 中添加一个文件夹 ,并将 XXX.exe 和 msiexec.exe 的快捷方式 剪切到 该文件夹下,这样在用户点击 开始 菜单 后 就会看见咱们安装程序的文件,提供了运行程序的快捷方式和卸载该程序的快捷方式。开发
接下来设置卸载程序的参数 :在 解决方案下 ,单击该安装项目名称 ,进入其 属性 页面 ,找到其 ProductCode 的属性值,将属性值复制下,本例中该属性值为:{226D41BC-A197-41B0-9156-2EC489089D99} (即本安装软件的ID)it
而后在 卸载程序所建的快捷方式 的属性页上 的 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安全设置” 取消勾选 ,从新编译 程序便可,通过修改后的程序,在安装后运行是以管理员身份运行,就不存在 拒绝访问的问题了。