这两天一直在做公司软件安装程序的打包,主要学习过程是参照《C#入门经典》第17章和一些网络资料完成的,现在自己做个总结。
软件平台:VisualStudio2008中文版(在05下操作应该是一样的)。
1. 在已有项目中选择:文件->添加->新建项目->其他项目类型->安装与部署->安装向导(安装项目也可以),然后点击确定。
2. 打开安装向导,点击下一步,按提示选择相应项,或者直接点击完成。
3. 开始制作:安装向导完成后即可进入项目文件夹。
4. 双击“应用程序文件夹”在右边的空白处右击,选择添加->文件,将你的做的应用程序的可执行文件和相应的类库和组件添加进来。选择添加->文件夹,例如:BIN,可添加程序集,存放系统安装文件。相应的可按需要增减文件夹。
5. 然后右击你的可执行文件,创建快捷方式,然后把快捷方式分别剪切或复制到左边的"用户的'程序'菜单"和"用户桌面"中。可在"用户的'程序'菜单"下添加文件夹。这样安装程序安装安装完成后会在 "开始->所有程序"和"桌面"上生成程序的快捷方式。
6. 然后右击左边的"应用程序文件夹"打开属性对话框: 将属性中的"defaultlocation"的路径中的"[manufacturer]"去掉,不然的话做好的安装程序默认安装目录会是"c:/programm file/你的用户名/安装解决方案名称"。
7. 如果不添加uninstall.exe可在控制面板->添加与删除程序中卸载程序。添加卸载方法为:在添加你的应用程序项目的时候,多添加一个msiexec.exe进去,这个文件在c:/windows/system32文件夹下,添加进去以后,为了让他更像个卸载程序,把他的名字改成"Uninstall.exe",当然这个关系不大,改不改都行的。然后给他创建一个快捷方式,放到桌面或者"开始-程序"中,我选择放在了开始菜单中,然后查找这个部署项目的ProductCode,鼠标左键单击项目名称,然后点击属性标签,这时你就可以看到ProductCode了。然后打开你创建的那个快捷方式的属性对话框,在Aguements属性中输入"/x {ProductCode}",如:/x {C4A3986F-EA12-4194-BB8B-A9777E78A6ED}。最后点击"生成解决方案"即可生成带有卸载功能的安装程序了。(注:安装完成后点击安装目录下的Uninstall.exe无法卸载,只有快捷方式可以卸载软件,处理办法正在研究。)
8. 然后打开解决方案管理器,右击解决方案名称,选择属性: 在打开的属性页中,选择"系统必备",选择你要求的系统项。如果选择“从组件供应商网站上下载系统必备组件”则必须保证目标计算机联网,这样安装程序会自动到微软的网站上下载组件,如果选择“从与我的应用程序相同的位置下载系统必备组件”目标计算机就不必联网,生成解决方案的时候会安装原件会自动拷贝计算机上的组件(软件运行所依赖的环境),在别的计算机上便可直接安装。
9. 好了,这样就完成了,然后点击"生成->生成解决方案",生成成功!
10. 可以按需要更改注册表,文件类型,用户界面,自定义操作,启动条件等项目。右击解决方案名称->视图中可找到相应的项。