有时,学习的乐趣不在于我们掌握了何种技术/何种技巧,善于总结/学会分享也是一种不错的体验,在我们遇到问题茫然无助的时候,都是多么希望能有过来人给我们指引,希望我们也能成为别人学习历程中的一个指路人。
下面,我来说说,如何将已经测试好的项目打包成一个商品化软件,可以双击安装的应用程序。
1 新建一个安装部署项目
打开VS编辑器,点击新建项目,选择:其他项目类型--安装与部署--安装向导(安装项目也一样),如下图:
其中,项目名称和存储路径都是可以修改的,点击确定后出现如下图:
这表示已进入安装向导了,点击下一步,或者直接点击完成即可,此时出现如下图:
2 添加文件
安装向导完成后即可进入项目文件夹
双击"应用程序文件夹(ApplicationFolder)"在右边的空白处右击,选择添加->文件,将你的做的应用程序的可执行文件(.exe)和相应的类库(.dll)和组件添加进来.
当然,这里也可以先添加文件夹,再在不同的文件夹里面添加不同的文件,如image文件夹来存储程序的ICO图片,program文件夹来存储自己开发项目的Debug下面编译好的所有文件等等。
添加文件完成后,选择刚刚添加到可执行程序(.exe),右击创建快捷方式(CreateShortcut to ---.exe),将此快捷方式拖放到用户桌面(User’s Desktop)里面去,以同样的方法添加快捷方式到用户程序菜单(User’s Programs Menu)中。
这样以来,在安装好应用程序后在用户的桌面和程序菜单中便可以看到应用程序的快捷方法。
选择应用程序文件夹,右击打开属性对话框,将属性中的"DefaultLocation"的路径中的"[Manufacturer]"去掉,不然的话做好的安装程序默认安装目录会是"c:\programm file\你自己的用户名\安装解决方案名称"。
3.添加卸载功能
选中应用程序文件夹,右击空白区选择添加文件,这个文件在c:\windows\system32文件夹下的msiexec.exe,添加进去以后,为了让它更像个卸载程序,把他的名字改成"uninstall.exe"。
然后给它创建一个快捷方式,放到桌面或者程序菜单中。
在“解决方案管理器”中单击项目名称,在属性窗口中找到“ProductCode”(注意,这里并不是右击中的属性),复制它后面的值,
然后右击新建的卸载快捷方式,在属性中找到“Aguements”,在其后的框里输入“/x {ProductCode}”或者其值“/x{C77FB1EA-856C-425C-8F6A-5FB32D7CF1AC}”即可。
4.添加系统必备
然后打开解决方案管理器,右击解决方案名称,选择属性,
在打开的属性页中,选择"系统必备(Prerequisites…)",在打开的系统必备页中,选中如下选择项,
其中:(1).WindowsInstaller 3.1 (必选);(2)Microsoft Visual Studio
2010 Tools forOffice Runtime (x86 and x64)(可选);(3)Microsoft
.NET Framework 4Client Profile (x86 and x64)(可选)
5.生成安装项目
选择解决方案名称,右击选择“Build”即可生成安装项目
生成的安装项目中项目的Debug中
参考资料:
http://wenku.baidu.com/view/df2270781711cc7931b71630.html?from=rec&pos=3&weight=5&lastweight=5&count=5
http://wenku.baidu.com/view/15b0792e3169a4517723a3f1.html
http://wenku.baidu.com/view/e63f83c30c22590102029d3a.html?from=rec&pos=0&weight=15&lastweight=5&count=5
http://blog.sina.com.cn/s/blog_5f0dab1e0100p0ml.html
http://blog.youkuaiyun.com/lhy2199/article/details/5113293
http://www.cnblogs.com/ITniao/archive/2010/12/06/1897473.html
http://www.docin.com/p-322071011.html
http://archive.cnblogs.com/a/1897662/
http://www.360doc.com/content/11/0110/19/4304924_85552366.shtml#
http://blog.youkuaiyun.com/nnsword/article/details/5254163
http://blog.youkuaiyun.com/lhy2199/article/details/5113293