c#程序打包大全
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#程序打包大全的更多相关文章
- 以向VS 程序打包集成自动写入注册表功能为例,介绍如何实现自由控制安装过程
最近由于项目部署时需要更灵活的控制程序安装的流程以及自定义安装行为,特意研究了一下VS程序打包,把解决办法和大家分享一下. 以VS2010为例: 这是一个已经设置好最基本的Visual Studio ...
- VS2012程序打包部署详解
VS2012没有自带打包工具,所以要先下载并安装一个打包工具.我采用微软提供的打包工具: InstallShield2015LimitedEdition.下载地址:https://msdn.micr ...
- 他山之石——vs2013 安装与部署及程序打包
C#打包需要这个:InstallShield 2013 Limited Edition for Visual Studio .下载地址: InstallShield 2013 Limited Edi ...
- SNF开发平台WinForm之十一-程序打包-SNF快速开发平台3.3-Spring.Net.Framework
原来我们用的是微软自带的打包工具去打包,但感觉好像也是第三方做的打包并且很是麻烦,还有时不成功报错.那综合考虑就找一个简单实用的打包工具吧,就找到了NSIS这个.具体打包步骤如下: 1.安装NSIS ...
- Android 程序打包和安装过程
APP程序打包与安装的流程: APP的安装过程:
- 【转】VS2012程序打包部署详解
上篇博客把收费系统的总体设计进行了一遍讲解,讲解的同时掺杂了些有关.NET编译机制的总结.程序编写测试完成后接下来我们要做的是打包部署程序,但VS2012让人心痛的是没有了打包工具.不知道出于什么原因 ...
- 将eclipse的应用程序打包成.exe
转自:http://blog.163.com/loveshijie_1991/blog/static/1760553112012102573437156/ 参考:http://blog.csdn.ne ...
- 用命令行将Java程序打包为jar文件
如何把写好的Java程序打包为jar文件呢?有两种方式可以选择 1.命令行的方式: 打包jar cf JAR文件名称 程序文件名称或者程序所在的文件夹举例:jar cf MyApp.jar D:Jav ...
- [转载]VS2012程序打包部署详解
上篇博客把收费系统的总体设计进行了一遍讲解,讲解的同时掺杂了些有关.NET编译机制的总结.程序编写测试完成后接下来我们要做的是打包部署程序,但VS2012让人心痛的是没有了打包工具.不知道出于什么原因 ...
随机推荐
- 【转载】关于BooleanQuery在搜索中的用处
我们在搜索中可能会遇到要搜索索引文件中不同字段,不同字段之间就存在了与或非的运算关系,如:这个xx字段中必须存在什么什么关键词,而另一个 XXX字段可以存在或不存在什么什么关键词等等等.这就需要有Bo ...
- Repository 设计模式介绍
在DDD设计中大家都会使用Repository pattern来获取domain model所需要的数据. 1.什么是Repository? "A Repository mediates b ...
- sql查询重复记录和from子查询
select name from (SELECT name,count(name) as countFROM Table WHERE (OrgUUId = (select top 1 uuid fro ...
- EF6 中tracking log使用方法总结
先上一段最近项目中的代码,此代码可以放到自己项目中的dbContext中 public override Task<int> SaveChangesAsync() { List<Au ...
- aspNet各种模块介绍
For browsers that do not support HTML5, you can use Modernizr. Modernizr is an open-source JavaScrip ...
- Hibernate---detached entity passed to persist一个解决方法
1.查看id生成策略,2.查看是否是手动设置的id :3.查看实体对象映射配置是否正确. 例如: public Emplopes(String name, char gender) { super(n ...
- hibernate----N-N--(人与地点)
package com.ij34.dao; import java.util.HashSet; import java.util.Set; import javax.persistence.*; @E ...
- python mysql Connect Pool mysql连接池 (201
easy_install mysql-connector-python >>>import mysql.connector as conner >>> conn ...
- PHP团队编码质量提升之道
这段文字其实只是标题党. 目前PHP猿的薪资水平普遍较高,但其实绝大多数PHP猿都不是科班出身,你问一个什么是OOP的问题可能都说不清楚. 在团队中,除了费力的去普及编程语言的基础知识,要想提高开发质 ...
- 左求值表达式,堆栈,调试陷阱与ORM查询语言的设计
1,表达式的求值顺序与堆栈结构 “表达式” 是程序语言一个很重要的术语,也是大家天天写的程序中很常见的东西,但是表达式的求值顺序一定是从左到右么? C/C++语言中没有明确规定表达式的运算顺序(从左到 ...