天使不哭 发表于 2007-4-3 21:32

[原创]手把手教你用C#打包应用程序(安装程序)【卸载模块已添加】

声明:<br>软件平台:VisualStudio2005中文版(在03下操作雷同).<br><br><br><STRONG>1:新建安装部署项目</STRONG><br>打开VS,点击新建项目,选择:其他项目类型-&gt;安装与部署-&gt;安装向导(安装项目也一样),然后点击确定.(详细见下图)[attach]18695[/attach]<br><br><STRONG><br>2:安装向导</STRONG><br>关闭后打开安装向导,点击下一步,或者直接点击完成.<br>如下图:<br>[attach]18696[/attach]<br>[attach]18697[/attach]<br><br><br><STRONG>3:开始制作<br></STRONG>安装向导完成后即可进入项目文件夹:<br>[attach]18698[/attach]<br><br><br>双击"<STRONG><FONT color=#ff0000>应用程序文件夹</FONT></STRONG>"在右边的空白处右击,选择添加-&gt;文件,将你的做的应用程序的可执行文件和相应的类库和组件添加进来.<br><br>[attach]18699[/attach]<br>[attach]18700[/attach]<br><br><br>然后右击你的可执行文件,创建快捷方式,然后把快捷方式分别剪切或复制到左边的"用户的'程序'菜单"和"用户桌面"中.<br>这样安装程序安装安装完成后会在 "开始-&gt;所有程序"和"桌面"上生成程序的快捷方式.<br><br>[attach]18701[/attach]<br><br><br>然后右击左边的"应用程序文件夹"打开属性对话框:<br>[attach]18702[/attach]<br><br><br>将属性中的"<STRONG><FONT color=#ff0000>defaultlocation</FONT></STRONG>"的路径中的"[manufacturer]"去掉,<br>不然的话做好的安装程序默认安装目录会是"c:\programm file\你的用户名\安装解决方案名称";<br>修改后如图:<br>[attach]18703[/attach]<br><br><br>然后打开解决方案管理器,右击你的解决方案名称,选择属性:<br><br>[attach]18704[/attach]<br><br><br>在打开的属性页中,选择"<STRONG><FONT color=#ff0000>系统必备</FONT></STRONG>",<br>[attach]18705[/attach]<br><br><br><STRONG><FONT color=#0033ff>在打开的系统必备页中,选中如下中的选择项,这个很重要!!!!!1!!!!!</FONT></STRONG><br>选上以后,在生成的安装文件包中包含.netframework组件.(这个选项默认是没有选中的)<br>[attach]18706[/attach]<br><br><br>好了,这样就完成99%了,然后点击"生成-&gt;生成解决方案",哈,生成成功!<br><STRONG>4:制作完成</STRONG><br>现在打开解决方案文件夹下的debug文件夹,就可以看到生成的安装文件了.<br><br><br>[attach]18707[/attach]<br><br><br><br><br><br><STRONG>【<FONT color=#ff0000>续</FONT>】关于"卸载"功能的添加<br>上面的文章只介绍了简单的生成安装的方法,<br>但是在vs.net2005下并没有直接生成卸载程序的功能,<br>所以我们只好用msi来实现了,<br>原理我就不讲了,网上一搜一堆,我只讲操作,<br></STRONG>【<FONT color=#0000ff>1</FONT>】:在添加你的应用程序项目的时候,多添加一个msiexec.exe进去,<br>这个文件在c:\windows\system32文件夹下,<br>[attach]18776[/attach]<br>添加进去以后,为了让他更像个卸载程序,把他的名字改成"Uninstall.exe",<br><br>[attach]18777[/attach]<br><br><br>当然这个关系不大,改不改都行的.<br>然后给他创建一个快捷方式,放到桌面或者"开始-程序"中,<br>我选择放在了开始菜单中,然后下面我们要的做的就是查找这个部署项目的ProductCode了,<br>鼠标左键单击项目名称,记住是左键单击,然后点击属性标签,注意:不是右击的属性,<br>这个区别很大,这时你就可以看到ProductCode了,<br>[attach]18781[/attach]<br><br><br>然后打开你创建的那个快捷方式的属性对话框,<br>在Aguements属性中输入"/x {ProductCode}",<br><br>[attach]18782[/attach]<br><br><br>好了,然后点击"生成解决方案"即可生成带有卸载功能的安装程序了.<br><br><br><br><br>制作到此结束,如有疑问,可以跟帖提出.<br>如果我知道的话,就一定帮助大家解决问题.<br>其实安装部署的制作也是博大精深的,<br>在这里我也只是简单的教给大家制作一个简单的安装程序的方法.<br>如果对这方面感兴趣的朋友,不妨多多的研究一下.<br>共享你的新发现.<br><br>也希望喜欢的朋友多多的支持一下。<br><br>
[align=right][color=#000066][此贴子已经被作者于2007-4-5 21:00:04编辑过][/color][/align]

guoxhvip 发表于 2007-4-3 21:39

<P>试一试        </P>

卡卡艾 发表于 2007-4-3 22:38

很好。[em08]

shiweifu 发表于 2007-4-3 23:46

支持啊,可能很多人需要吧?

INK 发表于 2007-4-4 15:58

谢谢

HankStar 发表于 2007-4-4 17:03

<P>那个卸载的呢?</P>

天使不哭 发表于 2007-4-4 18:06

<DIV class=quote><B>以下是引用<U>HankStar</U>在2007-4-4 17:03:40的发言:</B><BR>
<P>那个卸载的呢?</P></DIV>
<P><FONT color=#ff0000><STRONG>答:<BR>控制面板-添加删除程序中可以删除.<BR>添加卸载快捷方式的方法正在研究中.......</STRONG></FONT></P>

HankStar 发表于 2007-4-4 18:23

<P>开始-程序-卸载</P>

天使不哭 发表于 2007-4-5 12:36

解决办法已经研究出来了~~<BR>等我回去了就贴出来方法~~~

HankStar 发表于 2007-4-5 13:19

msiexec.exe<BR><BR>/x {..}[em02][em02]

bygg 发表于 2007-4-5 13:36

其实你再点一次安装文件不就可以卸载了吗?

dianzijiaoan 发表于 2007-4-5 16:24

<BR><BR>顶

天使不哭 发表于 2007-4-5 20:04

<DIV class=quote><B>以下是引用<U>HankStar</U>在2007-4-5 13:19:13的发言:</B><BR>msiexec.exe<BR><BR>/x {..}[em02][em02]</DIV>
<P>正如你所说~~~</P>

hxhfg 发表于 2007-4-5 23:10

我也顶了

hxhfg 发表于 2007-4-5 23:47

谢谢了,我已做成功!

hxhfg 发表于 2007-4-5 23:50

<P>在里,我想问一个问题,在别的机子还用安装.netframwork吗?</P>

天使不哭 发表于 2007-4-6 09:41

.netframwork是运行环境,<BR>就像是java程序必须运行在含有java虚拟机的系统上是一样的,<BR>我也寻求不安装.netframework就能运行c#程序的方法,<BR>但是一直没有结果.<BR>网上c#安装部署的文章太少了.

awing00544 发表于 2007-4-7 21:15

楼主能来个封装成应用程序的教程吗

zhou123456 发表于 2007-4-8 10:21

谢谢楼主,很有用<BR><BR><BR>

l109435 发表于 2007-4-8 23:56

为啥会是2005的,你能告诉我2003的咋打包应用程序吗?<br>我的邮箱是<a href="mailto:l109435@sina.com" target="_blank" >l109435@sina.com</A>
[align=right][color=#000066][此贴子已经被作者于2007-4-8 23:57:21编辑过][/color][/align]


页: [1] 2 3 4 5 6 7 8 9

编程论坛