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. 【小型系统】抽奖系统-使用Java Swing完成

    一.需求分析 1. 显示候选人照片和姓名. 2. 可以使用多种模式进行抽奖,包括一人单独抽奖.两人同时抽奖.三人同时抽奖. 3. 一个人可以在不同的批次的抽奖中获取一.二.三等奖,但是不能在同一批次抽 ...

  2. eclipse推荐的插件

    1.Log4j的颜色插件 http://m.blog.csdn.net/blog/JavaWinner/41548259

  3. MVC中Action的执行过程

    接着上一篇:MVC控制器的激活过程 一.代码现行,该伪代码大致解析了Action的执行的过程 try { Run each IAuthorizationFilter's OnAuthorization ...

  4. JAVA - 优雅的记录日志(log4j实战篇)

    写在前面 项目开发中,记录错误日志有以下好处: 方便调试 便于发现系统运行过程中的错误 存储业务数据,便于后期分析 在java中,记录日志有很多种方式: 自己实现 自己写类,将日志数据,以io操作方式 ...

  5. SQL - 内连接与外连接

    PDF下载地址:SQL-内连接与外连接.pdf 连接查询在关系型数据库中经常用到,是多表联合查询的基础. 主要包含:内连接,外连接,交叉连接. SQL - 内连接与外连接 内连接 等值连接 不等值连接 ...

  6. 将RichTextBox的内容直接写入数据库:

    将RichTextBox的内容直接写入数据库: private void button1_Click(object sender, EventArgs e) {    System.IO.Memory ...

  7. 【C#】注意用“划算”的方式使用图标

    先解释一下何谓“划算”:假定一个Winform程序包含若干个窗体,每个窗体左上角都要显示图标(即要设置Form.Icon属性),该程序本身也要有个图标(用于在OS资源管理器中显示),所有这些图标都是一 ...

  8. 显示 Sql Server 中所有表或表中行的信息

    在MSSQL中显示某个数据库中所有表或视图的信息: (以下语句为获取所有表信息,将绿色字"U"替换为"V"则获取所有视图信息.) SELECT sysobjec ...

  9. 【Java每日一题】20161115

    package Nov2016; import java.io.Serializable; public class Ques1115 implements Serializable{ private ...

  10. MySQL建表规范与常见问题

    一. 表设计 库名.表名.字段名必须使用小写字母,“_”分割. 库名.表名.字段名必须不超过12个字符. 库名.表名.字段名见名知意,建议使用名词而不是动词. 建议使用InnoDB存储引擎. 存储精确 ...