打开vs2013/2015菜单扩展和更新,查找Installer,找到Microsoft Visual Studio 2015 Installer Projects并下载安装。

安装之后模板中即有“安装部署项目”。

1. 自定义安装项目:

创建一个类库项目,点击添加新建项目,选择“安装程序类”,然后重写Install函数(本例中修改了计算的path变量,也可做其他注册表之类的操作):

public override void Install(System.Collections.IDictionary stateSaver)
{
base.Install(stateSaver);

System.Text.StringBuilder debug = new System.Text.StringBuilder();
try
{
//foreach (string k in this.Context.Parameters.Keys)
// sb.Append(k + ":" + this.Context.Parameters[k] + "\r\n");
string 安装目录 = this.Context.Parameters["targetdir"].ToString();
安装目录 = this.过滤(安装目录);
debug.Append("安装目录:" + 安装目录 + "\r\n");
string path = Environment.GetEnvironmentVariable("Path", EnvironmentVariableTarget.Machine);
path = this.过滤(path);

debug.Append("旧path:" + path + "\r\n");
if (path.IndexOf(安装目录) == -1)
path += ";" + 安装目录;
path = path.Replace(@"\\", @"\").Replace(";;", ";");
debug.Append("新path:" + path + "\r\n");
Environment.SetEnvironmentVariable("Path", path, EnvironmentVariableTarget.Machine);
}
catch (Exception ex)
{
debug.Append("Exception:" + ex.Message + "\r\n");

}
//下一行测试时打开
//System.IO.File.WriteAllText("d:\\log.txt", sb.ToString());
}

2. 创建一个安装部署项目

View,选择文件系统,添加前面的类为程序主输出。

View,选择自定义操作,在“Install”中增加“Appliction Dir”中上一步增加的主输出,即自定义安装类。选择此再F4显示属性,在CustomActionData中设置/targetdir="[TARGETDIR]\"   ,这应该是安装目录位置。

3. 启动条件

View菜单,选择启动条件,可以把.Net Framework4.5改为4

VS2013安装部署项目的更多相关文章

  1. Jenkins安装部署项目

    Jenkins安装部署项目 配置JDK git maven 部署到服务器 一.新建任务 二.配置jenkins 三.添加构建信息 四.应用.保存 五.踩坑填坑记录 5.1没有jar包的情况 5.2无法 ...

  2. VS2013安装部署过程详解

    注意:缺少安装部署的小伙伴,看上一篇有详细介绍 程序在“Release”平台下编译运行没有错误 第一步:“新建”------“项目”------“其他项目类型”------“安装部署”------“I ...

  3. VS 安装部署项目自解压程序解压后按顺序执行多个程序

    这篇blog介绍了如何用VS创建安装部署方案,以及如何制作自解压程序.然后我的程序中需要解压后按照顺序先后安装2个exe.winrar的解压后执行,虽然可以用分号填写多个应用,但貌似是同时执行的.为了 ...

  4. Linux Tomcat安装部署项目

    一.上传Tomcat服务器

  5. linux下docker安装部署项目(全)

    一 .系统安装 基于CentOS-7-x86_64-Minimal-1708.iso安装系统 1.2.  配置系统 1.2.1  在线更新内核版本(建议更新,旧版内核会有docker BUG) 1.2 ...

  6. C# winform安装部署(转载)

    c# winform 程序打包部署 核心总结: 1.建议在完成的要打包的项目外,另建解决方案建立安装部署项目(而不是在同一个解决方案内新建),在解决方案上右击-〉添加-〉现有项目-〉选择你要打包的项目 ...

  7. AE安装部署以及监测ArcEngine runtime 9.3是否安装

    目的:用ArcEngine9.3开发项目以后,用Visual Studio2008打包工具打包: 同时监测别的机器上是否有ArcEngine Runtime或者Desktop的支持. 解决方案: 1. ...

  8. VS2013没有安装部署,安装图解

    自vs2012后就已经没有安装向导了,VS2013安装是不带安装部署的,用 InstallShield Limited Edition for Visual Studio 解决安装部署问题 第一步:“ ...

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

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

随机推荐

  1. MyEclipse/Eclipse新建项目并且部署到服务器(tomcat)下

    1新建项目:file/new/web project/项目名/ok 2部署到tomcat下:tomcat右单机>>add/remove/选择项目/添加/完成(tomcat下有新建的项目) ...

  2. 【BZOJ1208】宠物收养所(平衡树,splay)

    题意:见题面 思路:因为每个时刻要么全是人要么全是宠物,所以可以一棵splay解决 维护单点插入,单点删除,求前驱,求后继即可 ..,..]of longint; num,fa:..]of longi ...

  3. 自定义ViewGroup

    ViewGroup --->A ViewGroup is a special view that can contain other views (called children.) The v ...

  4. Xcode - 知道.001

    1.在xcode7以后,一定要有根视图,否则会报错,程序崩溃,

  5. Erp中的ATP和CTP是什么?两者有什么区别?

    可用量承诺(Available to Promise,ATP),是一种库存匹配模型,意在最大限度地利用库存产品对客户订单需求做出及时和准确的反应,缩短交货提前期.降低库存水准: 可用生产能力承诺(Ca ...

  6. 程序中保存状态的方式之ViewState

    程序中保存状态的方式有以下几种: 1.Application 2.Cookie 3.Session 4.ViewState:ViewState是保存状态的方式之一,ViewState实际就是一个Hid ...

  7. geoserver使用curl发布 imagemosaic

    1.//create workspace     curl -v -u admin:geoserver -XPOST -H "Content-type: text/xml" -d ...

  8. 这有一个flag

    1.并查集[1224] 2.最小生成树?? 3.topsort(好洋气): 4.归并排序[1438]: 5.差分约束系统: 6.A*算法找k短路 7.scanf: 8.搜索[P1198]华容道: 9. ...

  9. Linux系统编程温故知新系列 --- 01

    1.大端法与小端法 大端法:按照从最高有效字节到最低有效字节的顺序存储,称为大端法 小端法:按照从最低有效字节到最高有效字节的顺序存储,称为小端法 网际协议使用大端字节序来传送TCP分节中的多字节整数 ...

  10. [转载]赖勇浩:推荐《Linux 多线程服务器端编程》

    推荐<Linux 多线程服务器端编程> 赖勇浩(http://laiyonghao.com) 最近,有一位朋友因为工作需要,需要从网游的客户端编程转向服务器端编程,找我推荐一本书.我推荐了 ...