从网上好多大拿那里东拼西凑了这篇文章。比原创多了些添加注册表和安装欢迎界面的东西。
首先在打开 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 文件即是我们的安装包。
注册表:
(1) 在“解决方案资源管理器”窗口中选中安装项目,单击鼠标右键,在弹出的对话框中选择“视图/注册表”选项,如图:
(2) 在“注册表”选项卡中,可以在HKRY_CURRENT_USER/Software或HKRY_CURRENT_MACHINE/Software下添加键值,当然节点名也是可以重命名的。
单击鼠标右键,在弹出的对话框中选择“新建/字符串值”选项。
如图:我设置了一个名为key1的键,值为”Hello World”
4)选中添加的注册表项值,单击鼠标右键,选择“属性窗口”选项,弹出“属性”窗口,如图,这里可以对注册表项的值作修改。
按照以上步骤,就可以为安装程序添加一个注册表项。在程序安装成功后,查看注册表,可以看到到我们写入的键值。
安装界面
选中安装项目,打开右键菜单,点击 视图 ->用户界面。
选中安装项目,打开右键菜单,点击 视图 -> 用户界面。
选择想要添加的对话框,如下图:
选中一个对话框,还可以调整它的执行顺序。如下图:
至于每个对话框的属性设置,在这里不再赘述,有兴趣的朋友可以自己折腾一下。
最基本的安装程序就是这些,小功告成,不足之处,欢迎大家指正...