原文:笔记:Advanced Installer 打包Web应用

公司要做一款增值税小产品,区别于ACME,本产品核心只有销项部分,面对的客户群是小企业,单税盒单开票机.....

我要做的主要有以下几点:

1、数据库改为SqlCE

2、统一安装配置VICA客户端,服务端(尽管VICA组同事不知道我要改这块^_^)

3、一键安装(支持32位,64位系统,暂时考虑NET4.5,Window7以上系统)

打包工具选择是Advanced Installer 12.7.2

制作安装包过程中遇到的问题:

1、对话框(Dialogs)必填项的控制

2、自定义bat脚本(Custom Actions)执行权限,执行顺序等问题

3、安装调试过程中如何跟踪log日志的问题

------------------------------------华丽的分割线-------------------------------------------

1>新建项目

文件 - > new ->选择 Enterprise


2>设置产品信息

产品名称,公司名称,默认会作为软件安装的路径


3>选择资源

选择web项目的发布文件,VICA服务端发布文件

选择Files and Folders ->点击 Application Folder 右键  ->弹窗中选择 Add Folder

4>在Package Definition -> Builds 中设置打包方式

我选择的是把所有资源文件打包成一个安装包


5>安装设置

设置安装包兼容32位,64位,默认的安装路径,安装过程使用管理员权限


6>安装必须的软件(环境搭建)

Requirements -> Prerequisites -> Packages

1、选择系统已有的工具(为了减少安装程序的大小也可以选择url)

2、安装自己的工具

右键Pre-install 在弹窗中选择 New Packages Prerequisites 。在本地选择自己的工具

3、安装IIS


7>设置对话框

在安装过程中需要客户配置如IP地址端口等信息

User Interface ->Dialogs

根据自己的需求设置安装过程中的对话框 (Toolbox 中选择控件拖到对话框中)

选择拖入的文本框,设置文本框的Property Name 这个值就是文本框的ID,其他地方可以通过Property Name来获取它的值

也可以设置默认值等(获取值的方式是中括号中填属性名 如:  [Property_Name] )

接下来设置非空判断 点击对话框中的“下一步”选择 Published Events 点击New 添加事件

在弹窗中选择Display a specific chil dialog  在Condition中设置条件 NOT TAX_NUMBER , 我很好奇为什么这个地方对文本框取值没有加中括号?? 反正这个条件就是 TAX_NUMBER 这个文本框不能为空,为空就弹窗口(这个窗口是自动创建的)

接下来修改弹出窗口 ,展开我们的对话框,找到自动生成的对话框

!!!注意了坑来了,必须把你添加的事件移动到系统默认的事件下,否则添加的事件无效(因为可能已经到了下一个对话框)


8>配置IIS

配置IP和端口(对话框中用户安装过程中输入的IP和端口)

其他设置如:应用池配置,.NET Framework 版本选择,等


9>自定义bat脚本

主要是为了重新注册安装的.NET Framework

bat脚本如下

@echo off
if "%PROCESSOR_ARCHITECTURE%"=="x86" goto x86
if "%PROCESSOR_ARCHITECTURE%"=="AMD64" goto x64
exit
:x64
"%WINDIR%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe" -iru -enable
exit :x86
"%WINDIR%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe" -iru -enable

设置运行时隐藏dom界面,管理员方式运行,已经运行事件步骤等。

如果有更高的要求比如安装的时候运行,卸载的时候运行,某个节点运行等等可以设置 Condition

笔记:Advanced Installer 打包Web应用的更多相关文章

  1. (转)使用 Advanced Installer 打包 一键安装Web应用程序

      使用 Advanced Installer 打包 一键安装Web应用程序         安装预览: 资源下载: 示例安装包 操作流程: 1.新建Asp.net Application. 2.设置 ...

  2. 使用 Advanced Installer 打包 一键安装Web应用程序

    原文:使用 Advanced Installer 打包 一键安装Web应用程序 安装预览: 资源下载: 示例安装包 操作流程: 1.新建Asp.net Application. 2.设置应用程序名称和 ...

  3. Advanced Installer 打包后,安装包在WIN10下重启后再次运行安装的解决办法

    原文:Advanced Installer 打包后,安装包在WIN10下重启后再次运行安装的解决办法 前几个月使用Advanced Installer 打包了一堆安装包,其中有使用默认主题的,也有根据 ...

  4. Excel催化剂开源第21波-使用Advanced Installer打包VSTO几个注意问题

    STO项目开发完毕完,最终需要分发给用户,需要Excel催化剂用的是Clickonce发布方式,但也面临到部分用户环境要求太高,设置过程太繁锁,而要求有一些简单的安装方式,用打包工具将其打包为一个EX ...

  5. 使用Advanced Installer打包工具如何设置是否安装预安装程序包

    要保证我们的程序能在目标机器上正常运行,便需要保证目标机器上提供了程序运行的必要组件. 而在使用Advanced Installer打包工具制作程序安装包时,我们可以通过配置“需求-运行环境-程序包- ...

  6. 使用AdvancedInstaller打包web工程设置tomcat端口的方法

    原文:使用AdvancedInstaller打包web工程设置tomcat端口的方法 1.首先,要把你要打包的tomcat下的server.xml文件删掉,因为tomcat自带的serv ...

  7. Advanced Installer 11.9基于IIS打包札记(For MySQL)

    原文:Advanced Installer 11.9基于IIS打包札记(For MySQL) Mysql免安装前期部署 下载绿色命令行版本的mysql,将其放入到发布的程序发布包内,执行Update批 ...

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

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

  9. Advanced Installer 9.8打包实录

    原文 Advanced Installer 9.8打包实录 主要介绍:(1)创建工程,(2)创建快捷方式及其图标(3)卸载设置 创建工程(.net为例): 工程创建完成....接下来进行简单设置 开始 ...

随机推荐

  1. active set method(激活集方法)

    在优化问题的求解中,如果待优化(最大最小)的目标函数,其解集受限于一组约束条件, g1(x)≥0,-,gk(x)≥0 约束条件定义着可行域(feasible region),对于可行域中的任一点 x ...

  2. gen_server笔记

    http://www.ask3.cn/a/jingcaibowen/tech/Erlang/2013/0614/42043.html gen_server是erlang的OTP框架中最常用的“行为模式 ...

  3. BZOJ 2783 树 - 树上倍增 + 二分

    传送门 分析: 对每个点都进行一次二分:将该点作为链的底端,二分链顶端所在的深度,然后倍增找到此点,通过前缀和相减求出链的权值,并更新l,r. code #include<bits/stdc++ ...

  4. const常量用extern声明定义的问题(extern变量不能在使用类里初始化)

    test.h #ifndef TEST_H_ #define TEST_H //常量声明和定义采取这种方法即可 const int a = 20;  //不报错,因为const变量链接属性默认是内部链 ...

  5. 【29.82%】【codeforces 703D】Mishka and Interesting sum

    [题解] 题意: 给n个数字组成有序数列; 给m个询问. 对于每个询问区间.输出这个区间里面出现次数为偶数次的所有数的异或值; 做法: 我们可以先求出这段区间里面所有(包括重复的数字)数字的异或值p1 ...

  6. Msg DisPatch

    一天写了个Carlife 协议数据分流器 #include <stdio.h> #include <string.h> typedef unsigned char uint8_ ...

  7. phpstudy2018升级MySQL5.5为5.7.24教程(图文)

    原文: phpstudy2018升级MySQL5.5为5.7教程(图文) 一.MySQL官网下载MySQL5.7版本,我这里下载的是MySQL5.7.24. 二.直接到D:phpStudyPHPTut ...

  8. twemproxy分片处理原理--剖析twemproxy代码正编

    twemproxy在redis上能处理多命令流程只有mset,mget,del的命令,例如mset的话是mset k1 v1 k2 v2 k3 k3,mget的话是mget k1 k2 k3,del的 ...

  9. 利用.net Core 对程序集中的类 进行统一依赖注入

    1.创建特性 用于标注依赖注入 using Microsoft.Extensions.DependencyInjection; using System; using System.Collectio ...

  10. flask-mail发送邮件始终失败

    from flask_mail import Mail,Message from flask import Flask import os app=Flask(__name__) app.config ...