C#2008中怎样利用.net的安装部署制作安装文件请给出详细的步骤,谢谢

解决方案 »

  1.   


    VS2008 C# 制作打包安装程序
    1. 创建一个安装向导项目或安装部署项目新建项目->其他项目类型->安装与部署->安装向导->为项目起个名称(名称为:setup1)
    在弹出来的安装向导中 点击下一步->要创建一个安装程序为安装应用程序中选择为Windows应用程序创建一个安装程序->添加要打包的文件->完成系统会自动将要打包的项目所依赖的依赖项添加到“检测到的依赖项”中,如Microsoft .Net Framework,如果没有就需要手动添加了。3. 建立目标机器上的开始-〉程序菜单和桌面的快捷方式右击应用程序文件夹中的可执行文件-〉创建快捷方式,创建完后,可以重命名为合适的中文名,将该快捷方式剪贴到用户的“程序”菜单中,一般可以先在“程序”菜单中创建一个文件夹。同样的,再创建一个到用户桌面中。4. 创建卸载程序
    卸载程序的创建方式也有两种。第一种,自己编写代码,代码如下/// <summary>
    /// 应用程序的主入口点。
    /// </summary>
    [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) 设置安装文件安装时的路径
    该路径是由安装项目的属性manufacture,productname来决定的,为"C:\ProgramFiles\[manufacture] \[productname],可以修改这两个属性值,或者干脆去掉manufacture属性,操作如下:
    右击左边的"应用程序文件夹"打开属性对话框,将属性中的"defaultlocation"的路径中的"[manufacturer]"去掉。
    2) 在解决方案管理器中右击安装项目的名称-〉属性,在打开的属性页中,选择"系统必备",勾中.Net Framework2.0。
    并且选中下面的“从与我相同的位置下载系统必备组件”。默认是第一项从网站进行下载,第三项是手工添加的方式。
    3) 可选。设置安装项目的RemovePreviousVersion属性为True,InstallAllUsers属性为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,但是点击卸载却并没有卸载掉程序,需要从控制面板中进行卸载。