c#程序打包现在分为两种,一种是VS自带的打包方式,还有一种是第三方的打包方式,在VS2013里面是没有自带打包安装部署的,只有第三方的创建。

第三方打包方式很简单,百度Installshield下载下来,安装好直接运行,简单容易懂

打包很有意思,上学时很喜欢玩游戏,所以假设自己做了个小游戏也能打包给别人安装玩乐,感觉挺有意思的,因为喜欢,所以才学,兴趣真的是最好的老师

直接下一步下一步就可以了,不用什么讲究,说说下一种方式吧。

新建一个安装部署解决方案,把需要的打包程序文件都添加到引用程序文件夹,要是想程序菜单和用户桌面有快捷方式的话就创建快捷方式添加到对应的文件里面

自定义操作,把你想要的执行程序等添加进来

用户界面可以添加对应的效果

选择引用程序文件夹属性,把DefaultLocation的值修改一下,去掉默认的安装路径,不然会安装到c:/里面,不好找,这个也是百度查的介绍

点击解决方案的属性,下面有图

找到ProductCode,这个是卸载的标识产品ID

把这个值搞到自定义操作的卸载属性里面,这个卸载文件是windows/system32/路径下面的msiexec.exe文件,这个卸载操作本人没有实现,装的是windows8.1系统,不是很了解

接下来还有安装时候的操作了,这个添加的是类库项目,在CustomActionData添加/targetdir="[TARGETDIR]"/属性,这样类库项目才能获取到路径值

 using System;
 using System.Collections;
 using System.Collections.Generic;
 using System.ComponentModel;
 using System.Configuration.Install;
 using System.Linq;
 using System.Diagnostics;

 namespace Library1
 {
     [RunInstaller(true)]
     public partial class Installer1 : System.Configuration.Install.Installer
     {
         public Installer1()
         {
             InitializeComponent();
             //在所有安装程序运行后执行
             this.AfterInstall += new InstallEventHandler(Installer_AfterInstall);

         }
         private void Installer_AfterInstall(object sender, InstallEventArgs e)
         {
             //this.Context.Parameters["targetdir"] 获取自定义操作里面的安装路径,前提是要在自定义操作里面的CustomActionData中填入/targetdir="[TARGETDIR]/"才能获取
             string path = this.Context.Parameters["targetdir"];//获取带有targetdir属性的安装路径
             Process.Start(path + "\\终极版俄罗斯.exe");//运行指定路径的可执行程序
         }
     }
 }

这样的话安装完后会执行指定的可执行文件了,基础的操作,图文虽乱,功能俱全。

还需在学习,记录。。。

c#程序打包大全的更多相关文章

  1. 以向VS 程序打包集成自动写入注册表功能为例,介绍如何实现自由控制安装过程

    最近由于项目部署时需要更灵活的控制程序安装的流程以及自定义安装行为,特意研究了一下VS程序打包,把解决办法和大家分享一下. 以VS2010为例: 这是一个已经设置好最基本的Visual Studio ...

  2. VS2012程序打包部署详解

    VS2012没有自带打包工具,所以要先下载并安装一个打包工具.我采用微软提供的打包工具:  InstallShield2015LimitedEdition.下载地址:https://msdn.micr ...

  3. 他山之石——vs2013 安装与部署及程序打包

    C#打包需要这个:InstallShield 2013 Limited Edition for Visual Studio  .下载地址: InstallShield 2013 Limited Edi ...

  4. SNF开发平台WinForm之十一-程序打包-SNF快速开发平台3.3-Spring.Net.Framework

    原来我们用的是微软自带的打包工具去打包,但感觉好像也是第三方做的打包并且很是麻烦,还有时不成功报错.那综合考虑就找一个简单实用的打包工具吧,就找到了NSIS这个.具体打包步骤如下: 1.安装NSIS ...

  5. Android 程序打包和安装过程

    APP程序打包与安装的流程: APP的安装过程:

  6. 【转】VS2012程序打包部署详解

    上篇博客把收费系统的总体设计进行了一遍讲解,讲解的同时掺杂了些有关.NET编译机制的总结.程序编写测试完成后接下来我们要做的是打包部署程序,但VS2012让人心痛的是没有了打包工具.不知道出于什么原因 ...

  7. 将eclipse的应用程序打包成.exe

    转自:http://blog.163.com/loveshijie_1991/blog/static/1760553112012102573437156/ 参考:http://blog.csdn.ne ...

  8. 用命令行将Java程序打包为jar文件

    如何把写好的Java程序打包为jar文件呢?有两种方式可以选择 1.命令行的方式: 打包jar cf JAR文件名称 程序文件名称或者程序所在的文件夹举例:jar cf MyApp.jar D:Jav ...

  9. [转载]VS2012程序打包部署详解

    上篇博客把收费系统的总体设计进行了一遍讲解,讲解的同时掺杂了些有关.NET编译机制的总结.程序编写测试完成后接下来我们要做的是打包部署程序,但VS2012让人心痛的是没有了打包工具.不知道出于什么原因 ...

随机推荐

  1. 如何解决Android SDK中离线文档打开慢的问题

    原文:http://blog.csdn.net/hansel/article/details/39268511 Android SDK中的离线文档虽然都是本地文件,但是有很多Javascript, C ...

  2. Windows Azure Virtual Network (10) 使用Azure Access Control List(ACL)设置客户端访问权限

    <Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的China Azure. 我们在创建完Windows Azure Virtual Machi ...

  3. path入门 20141102-1405

    那Python有哪些缺点呢? 第一个缺点就是运行速度慢,和C程序相比非常慢, 第二个缺点就是代码不能加密. Python是解释型的 不是编译型的 Python解释器-CPython 命令行: 只需要在 ...

  4. postgres配置主从流复制

    postgres主从流复制 postgres在9.0之后引入了主从的流复制机制,所谓流复制,就是从库通过tcp流从主库中同步相应的数据.postgres的主从看过一个视频,大概效率为3w多事务qps. ...

  5. 使用KeleyiSQLHelper类进行分页查询

    本文适用于sql server单主键表或者视图进行分页查询,支持多字段排序. KeleyiSQLHelper类的最新代码请到http://hovertree.com/down/下载整个解决方案源代码查 ...

  6. 帝国cmsV6.6版数据表

    信息表:每个模型都有以下六个表 phome_ecms_news 新闻系统模型-主表 phome_ecms_news_data_1 新闻系统模型-副表1 副表可无限增加 信息表 phome_ecms_n ...

  7. 【UWP】批量修改图标尺寸

    UWP开发中项目用到的图标资源非常多,通常每一种图标都有几种不同的尺寸,一般来说,我的项目所有Package.appxmanifest用到的图标就有40个,通常这些图标都是一样的,只是尺寸大小不一而已 ...

  8. C#的变迁史 - C# 4.0 之多线程篇

    在.NET 4.0中,并行计算与多线程得到了一定程度的加强,这主要体现在并行对象Parallel,多线程Task,与PLinq.这里对这些相关的特性一起总结一下. 使用Thread方式的线程无疑是比较 ...

  9. 2015暑假多校联合---Expression(区间DP)

    题目链接 http://acm.split.hdu.edu.cn/showproblem.php?pid=5396 Problem Description Teacher Mai has n numb ...

  10. CentOS6.5安装telnet命令

    安装好memcache之后想进入连接测试,telnet localhost 11211发现竟然提示没有telnet这个命令,于是需要自己进行安装. 一.查看本机是否安装telnet #rpm -qa ...