Advanced Installer 制作.NetWeb部署安装包

简介: 原文:Advanced Installer 制作.NetWeb部署安装包因为是.Net的Web应用程序,所以想用Advanced Installer 调用Dll实现安装部署。因为我需要自己定制参数,包括数据库服务器和数据库名称等,我需要建立一个企业版的项目工程。
原文: Advanced Installer 制作.NetWeb部署安装包

因为是.Net的Web应用程序,所以想用Advanced Installer 调用Dll实现安装部署。

因为我需要自己定制参数,包括数据库服务器和数据库名称等,我需要建立一个企业版的项目工程。

 建立完毕,产品参数设置好了之后,就转到【用户界面】-》【对话框】。

在【首次安装】目录下新建一个对话框:

                             【图1.1】

编辑对话框,如【图1.1】,我在这里将数据库服务器文本框属性名设置为:DBSERVERNAME    如【图1.2】

 

 

               【图1.2】

 我们就可以将属性名称作为参数标识。各个文本框属性名称设置好,我找到【工程细节】-》【自定义操作】

在【安装执行顺序】里面有一个节点【Install】,右击【Install】,选择【添加预定义自定义操作】下的【.Net Installer类操作】

【.Net Installer类操作】DLL的制作将稍后介绍。

 

 

         【图1.3】

 

 我看见如【图1.4】的默认设置。

 

 

         【图1.4】

 其中“操作数据”是重点!!这些数据将被dotNetCusAct.dll调用。

 单击“操作数据”后面的小按钮,弹出【编辑.Net自定义操作】对话框

 

         【图1.5】

Installer类参数的设置是重点,设置错误,将无法安装。

如”target-》[APPDIR]\“ 这个斜杠是必须的,[APPDIR]是安装路径属性名,我前面提到的属性名称在这里就能排上用场了。

如“DbServerName-》[DBSERVERNAME]”普通的属性不加“\”!

在.Net类库中可以用语句“Context.Parameters["DbServerName"]“来获取参数值。

 

 

【.Net Installer类操作】DLL的制作

至此,安装设置就完成了。下面的工作就交给.Net。

 

在VS中建立动态库,在项目在添加【安装程序类】见如下代码:

 

 

using  System.Collections;
using  System.ComponentModel;
using  System.Configuration.Install;


namespace  WebSetupLibrary
{
    [RunInstaller(
true )]
    
public   partial   class  MyInstaller : Installer
    {
        
public  MyInstaller()
        {
            InitializeComponent();
        }

        
#region  Install 安装

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

            Parameters paramters 
=   new  Parameters() {
                DbServer 
=   this .Context.Parameters[ " DbServer " ].ToString(),
                DbName 
=   this .Context.Parameters[ " DbName " ].ToString(),
                IISWebName 
=   this .Context.Parameters[ " iisWebName " ].ToString(),
                User 
=   this .Context.Parameters[ " UserName " ].ToString(),
                Pwd 
=   this .Context.Parameters[ " Password " ].ToString(),
                Port 
=   this .Context.Parameters[ " Port " ].ToString(),
                Target 
=   this .Context.Parameters[ " target " ].ToString(),
                ValidateOption 
=   this .Context.Parameters[ " ValidateOption " ].ToString(),
                Videolivedir 
=   this .Context.Parameters[ " VideoLiveDir " ].ToString()
            };


            Operators o 
=   new  Operators();
            o.RegisterParamers(paramters);

            o.FlashMediaServerSetting();
            o.DataBaseSetting();
            o.WebSiteSetting();
            o.RegistryKeySetting();
        }

        
#endregion
    }
}

 

有两个是必须的:

1.  [RunInstaller(true)]的值必须为true

2.必须继承Installer类,重写Install方法

 

我这里只是做了安装过程, 所以只是重写了Install方法,如要UnInstall,就可以重新UnInstall方法。

 

 

目录
相关文章
|
6天前
|
XML JSON API
ServiceStack:不仅仅是一个高性能Web API和微服务框架,更是一站式解决方案——深入解析其多协议支持及简便开发流程,带您体验前所未有的.NET开发效率革命
【10月更文挑战第9天】ServiceStack 是一个高性能的 Web API 和微服务框架,支持 JSON、XML、CSV 等多种数据格式。它简化了 .NET 应用的开发流程,提供了直观的 RESTful 服务构建方式。ServiceStack 支持高并发请求和复杂业务逻辑,安装简单,通过 NuGet 包管理器即可快速集成。示例代码展示了如何创建一个返回当前日期的简单服务,包括定义请求和响应 DTO、实现服务逻辑、配置路由和宿主。ServiceStack 还支持 WebSocket、SignalR 等实时通信协议,具备自动验证、自动过滤器等丰富功能,适合快速搭建高性能、可扩展的服务端应用。
36 3
|
2月前
|
编解码 前端开发 JavaScript
.NET_web前端框架_layui_栅格布局
【8月更文挑战第27天】
41 4
|
2月前
|
负载均衡 应用服务中间件 持续交付
微服务架构下的Web服务器部署
【8月更文第28天】随着互联网应用的不断发展,传统的单体应用架构逐渐显露出其局限性,特别是在可扩展性和维护性方面。为了解决这些问题,微服务架构应运而生。微服务架构通过将应用程序分解成一系列小型、独立的服务来提高系统的灵活性和可维护性。本文将探讨如何在微服务架构中有效部署和管理Web服务器实例,并提供一些实际的代码示例。
90 0
|
2天前
|
监控 网络安全 调度
Quartz.Net整合NetCore3.1,部署到IIS服务器上后台定时Job不被调度的解决方案
解决Quartz.NET在.NET Core 3.1应用中部署到IIS服务器上不被调度的问题,通常需要综合考虑应用配置、IIS设置、日志分析等多个方面。采用上述策略,结合细致的测试和监控,可以有效地提高定时任务的稳定性和可靠性。在实施任何更改后,务必进行充分的测试,以验证问题是否得到解决,并监控生产环境的表现,确保长期稳定性。
8 1
|
26天前
|
开发框架 监控 前端开发
在 ASP.NET Core Web API 中使用操作筛选器统一处理通用操作
【9月更文挑战第27天】操作筛选器是ASP.NET Core MVC和Web API中的一种过滤器,可在操作方法执行前后运行代码,适用于日志记录、性能监控和验证等场景。通过实现`IActionFilter`接口的`OnActionExecuting`和`OnActionExecuted`方法,可以统一处理日志、验证及异常。创建并注册自定义筛选器类,能提升代码的可维护性和复用性。
|
26天前
|
开发框架 .NET 中间件
ASP.NET Core Web 开发浅谈
本文介绍ASP.NET Core,一个轻量级、开源的跨平台框架,专为构建高性能Web应用设计。通过简单步骤,你将学会创建首个Web应用。文章还深入探讨了路由配置、依赖注入及安全性配置等常见问题,并提供了实用示例代码以助于理解与避免错误,帮助开发者更好地掌握ASP.NET Core的核心概念。
62 3
|
1月前
|
开发框架 前端开发 .NET
VB.NET中如何利用ASP.NET进行Web开发
在VB.NET中利用ASP.NET进行Web开发是一个常见的做法,特别是在需要构建动态、交互式Web应用程序时。ASP.NET是一个由微软开发的开源Web应用程序框架,它允许开发者使用多种编程语言(包括VB.NET)来创建Web应用程序。
45 5
|
14天前
|
监控 安全 API
Docker + .NET API:简化部署和扩展
Docker + .NET API:简化部署和扩展
29 0
|
15天前
|
监控 安全 API
最完美的扩展Docker + .NET API:简化部署和扩展
最完美的扩展Docker + .NET API:简化部署和扩展
42 0
|
1月前
|
SQL 关系型数据库 数据库
七天.NET 8操作SQLite入门到实战详细教程(选型、开发、发布、部署)
七天.NET 8操作SQLite入门到实战详细教程(选型、开发、发布、部署)