C#制作安装程序图文教程

发布时间:2012-03-09 14:25:43

C#制作安装程序图文教程

作者:草根IT 来源:未知 人气:1623标签:

导读:1:新建安装部署项目打开VS,点击新建项目,选择:其他项目类型->安装与部署->安装向导(安装项目也一样),然后点击确定.(详细见下图)此主题相关图片如下:2:安装向导关闭后打开安装向导,点击下一步,或者直接点击完成.3:开始制作安装向导完成后即可进入项目文件夹:双击"应用程序文件夹"在右边的空白处右击,选择添加->文件,将你的做...

C#制作安装程序图文教程

1:新建安装部署项目

打开VS,点击新建项目,选择:其他项目类型->安装与部署->安装向导(安装项目也一样),然后点击确定.(详细见下图)

此主题相关图片如下:

2:安装向导

关闭后打开安装向导,点击下一步,或者直接点击完成.





3:开始制作

安装向导完成后即可进入项目文件夹:

双击"应用程序文件夹"在右边的空白处右击,选择添加->文件,将你的做的应用程序的可执行文件和相应的类库和组件添加进来.



然后右击你的可执行文件,创建快捷方式,然后把快捷方式分别剪切或复制到左边的"用户的'程序'菜单""用户桌面".

这样安装程序安装安装完成后会在 "开始->所有程序""桌面"上生成程序的快捷方式.

然后右击左边的"应用程序文件夹"打开属性对话框:



将属性中的"defaultlocation"的路径中的"[manufacturer]"去掉,

不然的话做好的安装程序默认安装目录会是"c:\programm file\你的用户名\安装解决方案名称";



然后打开解决方案管理器,右击你的解决方案名称,选择属性:





在打开的属性页中,选择"系统必备",



在打开的系统必备页中,选中如下中的选择项,这个很重要!!!!!1!!!!!

选上以后,在生成的安装文件包中包含.netframework组件.(这个选项默认是没有选中的)







好了,这样就完成99%,然后点击"生成->生成解决方案",,生成成功!

4:制作完成

现在打开解决方案文件夹下的debug文件夹,就可以看到生成的安装文件了.







】关于"卸载"功能的添加

上面的文章只介绍了简单的生成安装的方法,

但是在vs.net2005下并没有直接生成卸载程序的功能,

所以我们只好用msi来实现了,

原理我就不讲了,网上一搜一堆,我只讲操作,

1】:在添加你的应用程序项目的时候,多添加一个msiexec.exe进去,

这个文件在c:\windows\system32文件夹下,



添加进去以后,为了让他更像个卸载程序,把他的名字改成"Uninstall.exe",







当然这个关系不大,改不改都行的.

然后给他创建一个快捷方式,放到桌面或者"开始-程序",

我选择放在了开始菜单中,然后下面我们要的做的就是查找这个部署项目的ProductCode,

鼠标左键单击项目名称,记住是左键单击,然后点击属性标签,注意:不是右击的属性,

这个区别很大,这时你就可以看到ProductCode,



然后打开你创建的那个快捷方式的属性对话框,

Aguements属性中输入"/x {ProductCode}",

然后点击"生成解决方案"即可生成带有卸载功能的安装程序了.

 主题:C#打包制作安装程序

该文是根据网上的文章并结合自己实际打包的过程而整理的。



开发平台:VisualStudio2005中文版。



步骤如下:



1. 创建一个安装向导项目或安装部署项目

  

新建项目-〉其他项目类型-〉安装与部署-〉安装向导(或安装部署),如命名为setup



2. 将要打包的项目导入到这个安装项目中,有两种方式:

   第一种,自动方式,在解决方案上右击-〉添加-〉现有项目-〉选择你要打包的项目,这样就会把这个项目添加到该解决方案中来,

   然后在安装项目setup上右击-〉添加-〉项目输出-〉主输出,在项目下拉框中选择刚添加的项目,选择这样就会把这个要打包的项目的基本文件添加到左侧的应用程序文件夹中,名字为主输出来自**(活动)。

   第二种,手动方式,右击左侧的应用程序文件夹(这个文件夹就是要打包的项目中需要的文件)-〉添加-〉文件或文件夹,主要是exe文件和其他配置文件或数据文件。



在第一种方式中,系统会自动将要打包的项目所依赖的依赖项添加到检测到的依赖项中,如Microsoft .Net Framework,如果没有就需要手动添加了。

在第二种方式中,依赖项需要手动添加,右击项目-->添加-->合并模块,选择要添加的文件,.Net Framework是必须的,位于:C:\Program Files\Common Files\Merge Modules\ 下。



注意在第一种方式中,如果要打包的项目有配置文件或数据文件等其他,还需要手动将它们添加到应用程序文件夹中。





3. 建立目标机器上的开始-〉程序菜单和桌面的快捷方式



   右击应用程序文件夹中的可执行文件-〉创建快捷方式,创建完后,可以重命名为合适的中文名,将该快捷方式剪贴到用户的程序菜单中,一般可以先在程序菜单中创建一个文件夹。同样的,再创建一个到用户桌面中。



4. 创建卸载程序

   卸载程序的创建方式也有两种。



   第一种,自己编写代码,代码如下



  ///



  /// 应用程序的主入口点。

  ///


  [STAThread]

  static void Main()

  {

       System.Diagnostics.Process.Start("msiexec", "/X{C4A3986F-EA12-4194-BB8B-A9777E78A6ED}");

       Application.Exit();

       //Application.Run(new Form1());

  }



其中{C4A3986F-EA12-4194-BB8B-A9777E78A6ED}为安装项目的ProductCode属性值。查看该值时需要点击解决方案中的安装项目的名字,然后在属性窗口(菜单中的视图-〉属性窗口)中查看ProductCode属性值。



然后将该段代码的可执行文件加入到应用程序文件夹中,在卸载项上指向它即可.



   第二种,使用msi实现

   在左侧的应用程序文件夹中添加c:\windows\system32\msiexec.exe文件,为了明确其意义,可改为uninstall.exe。然后按照上面提到的步骤创建该卸载文件的快捷方式,同样剪贴到用户的程序菜单中。

   在第三步中提到先在程序菜单中创建一个文件夹,所以这里将该文件放到这个文件夹下,否则打包的程序安装后,在开始-〉程序列表中是看起来毫无关系的两个快捷方式。为了便于识别,将此快捷方式的名字修改为卸载**”**为软件名称。

   修改该快捷方式的Argument属性值为"/x {ProductCode}"ProductCode的查看方式见第4步中的第一种方式。



5. 设置安装项目的属性

   1) 设置安装文件安装时的路径

      该路径是由安装项目的属性manufactureproductname来决定的,为"C:\ProgramFiles\[manufacture]\[productname],可以修改这两个属性值,或者干脆去掉manufacture属性,操作如下:

      右击左边的"应用程序文件夹"打开属性对话框,将属性中的"defaultlocation"的路径中的"[manufacturer]"去掉。

   2) 在解决方案管理器中右击安装项目的名称-〉属性,在打开的属性页中,选择"系统必备",勾中.Net Framework2.0

      并且选中下面的从与我相同的位置下载系统必备组件。默认是第一项从网站进行下载,第三项是手工添加的方式。

   3) 可选。设置安装项目的RemovePreviousVersion属性为TrueInstallAllUsers属性为True





6. 生成解决方案

   生成-〉生成解决方案。



   其更全的操作请到如下查看:

   http://www.microsoft.com/china/MSDN/library/netFramework/netframework/VCSdnnetdepvsredistdeploy.mspx



?mfr=true

http://www.java-asp.net/aspnet/200601/t_49903.html

部署.net平台的程序



在我实际打包的过程中,采用的是第二步中的第一种方式,第四步的第二种方式。虽然安装程序后,在安装目录下有msiexec.exe,但是点击卸载却并没有卸载掉程序,需要从控制面板中进行卸载。



附:

.Net Framework2.0打包到安装程序中的另一种方式需要用到MicrosoftVisual Studio .NET 2005 引导程序插件PluginInstaller.msi,可以到微软官方网站下载,然后安装。安装该插件后再进行打包时,会发现安装文件的同级目录下会多出好几个文件。



另外在第五步中选择从从网站下载.Net Framework 2.0,可以通过下面的方式查看url地址:

点击解决方案下的安装项目,视图-〉编辑器-〉启动项目。可以左侧的启动条件下有.Net Framework一项,点击该项后在属性窗口中查看InstallUrl属性,一般为"http://go.microsoft.com/fwlink/?LinkId=9832"



参考:

手把手教你用C#打包应用程序(安装程序)【卸载模块已添加. http://bbs.bccn.net/viewthread.php?tid=129015.

C#打包. http://www.cnblogs.com/wenlin1234/archive/2008/01/16/798737.html

C#制作安装程序图文教程

相关推荐