C#进阶系列——使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)

时间:2021-10-29 20:35:25

前言:大过年的,写篇文章不容易,还是给自己点个赞~~年前找了下.net安装包的制作方法,发现Visual Studio自带的制作工具使用起来非常麻烦,需要单独下载安装包,并且什么激活认证等等屁事相当麻烦,最坑爹的是它的自定义dialog使用起来有很多的局限性,所以找了很久,终于找到了Advanced Installer。摸索了两天,算是掌握了一些基本的方法,在此做个记录。相信对于需要使用的园友来说绝对是干货,不信可以看看。

本文原创地址:http://www.cnblogs.com/landeanfen/p/6359156.html

一、基础用法

关于Advanced Installer的基础用法,网上真的是可以搜到太多,博主就不做过多描述,由于要用到自定义安装包的过程,需要新建dialog,博主用了破解版的企业模板,Advanced Installer的版本是13.5。

首先新建模板里面选择Enterprise。

C#进阶系列——使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)

需要设置的几个关键点如下:

添加安装包的文件和文件夹

C#进阶系列——使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)

如果是Web安装包,需要设置IIS的相关信息,这个网上非常多的资料,不做过多说明。

C#进阶系列——使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)

自定义dialog,注意这里必须要是企业版的模板才有这个功能。

C#进阶系列——使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)

C#进阶系列——使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)

二、设置IIS网站的网站名、IP、端口号

如果仅仅是上述这些东西,本文是没有太大价值的。以上只是铺垫,下面才是本文要说的重点。

可以自定义dialog,动态配置IIS的网站名、绑定IP、端口。

1、新建dialog,拖出安装过程中dialog的外观,相信有winform经验的我们来说,这个再简单不过了。比如下面的效果:

C#进阶系列——使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)

记住各个文本框的属性名,比如这里的网站名称对应的文本框的属性名为EDIT_2_PROP_1

C#进阶系列——使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)

我们暂且记住这个属性名,来到IIS选项卡里面,我们这么配置:

C#进阶系列——使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)

原来,在Advanced Installer里面,使用中括号[]将控件的属性名括起来表示变量的概念,这点对于咱们程序员来说应该不难理解。这么说是不是很好理解了呢~~然后,我们用同样的方法设置IIS网站的绑定IP和端口号。

C#进阶系列——使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)

C#进阶系列——使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)

这样设置之后,我们在安装过程中就可以去动态配置IIS的网站名、IP、端口。就是这么简单,是不是很神奇~~

三、动态配置Web.config

在安装过程中,我们最常配置的还有Web.config配置文件,在Advanced Installer里面可以方便的配置xml文件。赶快来看看吧。

首先看看Web.config里面的内容。

C#进阶系列——使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)

在添加文件的时候,如果我们添加的文件类型是xml,Advanced Installer会提示你是否转成可配置的xml。比如我们在Web.config文件上面右键,选择Properties。

C#进阶系列——使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)

C#进阶系列——使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)

再来看看这里的[EDIT_1_PROP]是哪里来的。

C#进阶系列——使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)

有了上文的基础,这个应该不难理解了吧。没错,就是通过这种变量的形式去动态配置的。这里只是配置了一个简单的appsetting作为示例,可能实际环境中使用最多的就是动态去配置connectionstring了,如果有兴趣可以试试,和以上的步骤基本相似。当然,之前在园子里看到一个通过自定义dll去配置web.config的示例,略显麻烦。还是这样简单。

做了这些准备工作之后,我们的安装包基本就做完了。编译运行之后,经过一步一步傻瓜式的安装之后,即可动态去配置这些东西,不信你试试~~

四、总结

以上通过简单的一个实例配置了一下IIS和Web.config,有时间可以进一步介绍下通过dll的方式操作界面的控件的方法。

如果你觉得本文能够帮助你,可以右边随意 打赏 博主,也可以 推荐 进行精神鼓励。你的支持是博主继续坚持的不懈动力。

本文原创出处:http://www.cnblogs.com/landeanfen/

欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利

C#进阶系列——使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)的更多相关文章

  1. C#进阶系列——使用Advanced Installer制作IIS安装包(二:配置安装包依赖项和自定义dll)

    前言:上篇C#进阶系列——使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)介绍了下使用Advanced Installer配置IIS和Web.confi ...

  2. 最近上传图片上传文件报413错误及仅Https下报413问题,IIS高版本的配置方案及Web.config配置全解

    IIS文件上传大小限制30M,C盘中有的IIS_schema.xml文件 C:\Windows\System32\inetsrv\config\schema\ 但是考虑到安全等问题,而且这个文件默认是 ...

  3. 使用Advanced Installer制作IIS安装包(二:配置安装包依赖项和自定义dll)

    前言:上篇使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)介绍了下使用Advanced Installer配置IIS和Web.config的过程,操作起 ...

  4. 使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)

    前言:大过年的,写篇文章不容易,还是给自己点个赞~~年前找了下.net安装包的制作方法,发现Visual Studio自带的制作工具使用起来非常麻烦,需要单独下载安装包,并且什么激活认证等等屁事相当麻 ...

  5. 用Advanced Installer制作DotNetBar for Windows Forms 12.0.0.1_冰河之刃重打包版详解

    关于 DotNetBar for Windows Forms 12.0.0.1_冰河之刃重打包版 --------------------11.8.0.8_冰河之刃重打包版-------------- ...

  6. Advanced Installer 制作.NetWeb部署安装包

    原文:Advanced Installer 制作.NetWeb部署安装包 因为是.Net的Web应用程序,所以想用Advanced Installer 调用Dll实现安装部署. 因为我需要自己定制参数 ...

  7. 使用Qt Installer Framework制作软件安装包

    概述 Qt Installer Framework(缩写QIF)是Qt官方用于生成软件安装包的工具.包括Qt Creator和Qt Installer Framework自身的安装包都是由这个工具制作 ...

  8. DevExpress控件库 开发使用经验总结3 制作项目安装包

    2015-01-27 使用DevExpress控件包开发C/S项目完成后,部署前需要制作本地安装包.本文还是使用“SetupFactory”安装工厂来制作安装包.在以前的系列文章中详细介绍过该工具的使 ...

  9. 使用WinRar软件制作程序安装包

    之前我写过使用好压软件打包程序,见随笔: 使用好压(HaoZip)软件打包EverEdit制作安装程序 - Fetty - 博客园http://www.cnblogs.com/fetty/p/4907 ...

随机推荐

  1. Zen of Python

    Zen of Python $ python Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:01:18) [MSC v.1900 32 bit ...

  2. 搜狗输入法wp风格皮肤

    换了个nexus 发现输入法真的没有wp的好用 没办法,刚好搜狗输入法有定制皮肤的选项,所以自己做了个wp风格的输入法皮肤. 一点微小的工作 http://pan.baidu.com/s/1kVsHd ...

  3. C#调用WebService (转)

    1.1.Web Service基本概念 Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求, ...

  4. 一篇文章,读懂 Netty 的高性能架构之道

    原文 Netty是一个高性能.异步事件驱动的NIO框架,它提供了对TCP.UDP和文件传输的支持,作为一个异步NIO框架,Netty的所有IO操作都是异步非阻塞的,通过Future-Listener机 ...

  5. Ant 命令总结

    1 Ant是什么? Apache Ant 是一个基于 Java的生成工具.生成工具在软件开发中用来将源代码和其他输入文件转换为可执行文件的形式(也有可能转换为可安装的产品映像形式).随着应用程序的生成 ...

  6. 微软开放技术发布开源 Jenkins 插件以将 Windows Azure Blob 服务用的开作存储库

     发布于 2014-02-10 作者 陈 忠岳 持续集成 (CI) 的历史源远流长, 其宗旨在于软件团队在敏捷环境中不断将他们的工作整合为持续构建.管理 CI 进程的工具已存在一段时间.过去几年中 ...

  7. 正则表达式中的re.S

    正则表达式中,“.”的作用是匹配除“\n”以外的任何字符,也就是说,它是在一行中进行匹配.这里的“行”是以“\n”进行区分的.a字符串有每行的末尾有一个“\n”,不过它不可见. 如果不使用re.S参数 ...

  8. c++模板笔记

    使用vc2015进行C++ 模板的学习实验和笔记 用简单示例学习了解STL template大部头理论书 讲解各种规则和各种规则例外的解决办法 集中精力在20%的规则中的阴暗角落而不是80%实践中要注 ...

  9. vue 中使用 screenfull.js 全屏插件

    参考网址: https://blog.csdn.net/houyibing930920/article/details/89214200 https://www.jianshu.com/p/cfbb1 ...

  10. Zookeeper概述和基本概念

    一.Zookeeper背景 随着互联网技术的发展,企业对计算机系统的计算,存储能力要求越来越高,各大IT企业都在追求高并发,海量存储的极致,在这样的背景下,单纯依靠少量高性能单机来完成计算机,云计算的 ...