C# Winform 程序打包教程

c#开发的winform程序直接拷贝到其他人的电脑一般不能正常运行,这是因为缺少.net环境和动态库文件,这就需要我们提前对程序进行打包,这样打包好的程序安装到其他电脑的时候就可以正常运行了。

本文介绍如何使用vs2010打包winform桌面程序。

  • 1

           用vs2010打开c#项目,右键点击项目解决方案名称,在弹出的菜单框中选择【添加】→【新建项目】,如图所示。

           c#Winform程序打包教程
  • 2

    点击【项目】后,弹出【新建项目】对话框。选择【其他项目类型】,点击其左边的三角箭头,选择【安装和部署】。点击【安装和部署】左边的三角箭头,选择【Visual Studio Installer】。然后在右边的展开项目中,选择【安装项目】。默认的项目名称为Setup1,这里我们自定义为SetupHRP。

    c#Winform程序打包教程
  • 3

    新建安装项目后,添加安装文件。 右键点击【应用程序文件夹】,选择【添加】→【项目输出】,如图所示。

    c#Winform程序打包教程
  • 4

    在弹出的【添加项目输出组】对话框中,选择【主输出】,点击【确定】按钮

    c#Winform程序打包教程
  • 5

    继续右键点击【应用程序文件夹】,选择【添加】→【文件】,选择“c:\windows\system32\msiexec.exe”文件,用于卸载程序。

    c#Winform程序打包教程
  • 6

    继续右键点击【应用程序文件夹】,选择【添加】→【文件】,添加程序需要的ICO图标文件和dll动态库文件

    c#Winform程序打包教程
  • 右建点击主输出项目和卸载程序msiexec.exe,分别创建快捷方式,这里主输出项目的快捷方式重命名为孕产妇信息管理系统(HRP),卸载程序msiexec.exe快捷方式重命名为卸载HRP。

    c#Winform程序打包教程
  • 配置卸载程序快捷方式 。左键点击安装项目【SetupHRP】,查看项目属性【ProductCode】值并复制,这里用于演示的项目的属性值是{41FC0830-B98B-4BDB-959C-8CD4405CFEA3}。注意属性值要全部复制,包括两个大括号{}。

    c#Winform程序打包教程
  • 点击【卸载HRP】快捷方式,右下角属性栏中【Arguments】属性,在属性栏中首先填入“/x”后加一个空格,再将【ProductCode】的属性值粘贴过来。

    c#Winform程序打包教程
  • 创建开始菜单快捷方式。右键点击【用户的“程序”菜单】,新建一个文件夹,命名为【孕产妇信息管理系统(HRP)】。将程序【孕产妇信息管理系统(HRP)】快捷方式和卸载HRP快捷方式拖动到【用户的”程序”菜单】的【孕产妇信息管理系统(HRP)】文件夹下。

    c#Winform程序打包教程
  • 创建用户桌面快捷方式。在【应用程序文件夹】重新创建一个将程序【孕产妇信息管理系统(HRP)】快捷方式,拖放到【用户桌面】文件夹内。

    c#Winform程序打包教程
  • 打包.net framework 框架。首先右键点击SetupHRP项目,在弹出的菜单中选择【属性】。

    c#Winform程序打包教程
  • 点击【属性】后,弹出【SetupHRP属性页】对话框,点击【系统必备】按钮。

    c#Winform程序打包教程
  • 在弹出的【系统必备】对话框中,勾选【创建用于安装系统必备组件的安装程序】、【Microsoft.NET Framework 4 Client Profile (x86 和 x64)】、【从与我的应用程序相同的位置下载系统必备组件】这几个选项,点击【确定】按钮。若用户的项目还需要其他系统组件,可按需勾选相应组件。

    c#Winform程序打包教程
  • 修改程序默认的安装路径。左建点击【应用程序文件夹】,打开属性对话框。将【DefaultLocation】属性值中的"[Manufacturer]"去掉,否则安装程序默认安装目录会是"C:\Program Files\你的用户名\安装解决方案名称"。

    c#Winform程序打包教程
  • 最后生成安装包。右键点击SetupHRP项目,选择【生成】,程序进行打包,若没有错误提示,则程序打包成功。在解决方案文件夹下生成一个【SetupHRP】(你定义的安装项目名称)的文件夹,安装文件就在此目录下。

    c#Winform程序打包教程
    END

参考了:百度经验

猜你喜欢

转载自www.cnblogs.com/xujing-yes/p/10826325.html