• 秋色园QBlog技术原理解析:博客一键安装工具技术实现[附源码下载]


    曾经在:秋色园QBlog V2.5 后台管理系统源码发布下载 一文中,有网友 parabeyond 留言:

    秋天哥问下 秋色园将完了吗
    可以介绍下 一键安装工具 是怎么实现的吗 想学

    本人答复:

    引用parabeyond:
    秋天哥问下 秋色园将完了吗
    可以介绍下 一键安装工具 是怎么实现的吗 想学

    想学啊,好,改天写一篇文章分享下源码和知识!

    既然答应了,今天就为大伙分享一下 路过秋天版博客一键安装工具.exe 的技术原理。

    一:秋色园QBlog 一键安装工具的界面

     

    1:web.config配置界面

    说明:通过此界面,可以直接操作web.config文件,进行基础的配置。

    2:新建网站

    说明:通过“创建站点”按钮,可以在IIS中创建新站点。并附一些IIS常用操作功能。

    PS:本工具目前仅在Xp/2003系统下测试通过,win7及其它系统可能无法使用此工具在本地安装秋色园QBlog。

    于是,需要手动安装,详情见:Windows7下如何安装部署秋色园CYQBlog站点

    二:秋色园QBlog 一键安装工具技术原理

     

    1:分析:要实现这么一个工具,都需要些什么技术?

    1:操作web.config:第一个界面就看清了什么功能了。

    2:操作IIS:创建站点,包括IIS附加功能。

    3:操作IO:检测,修改Host文件,为文件夹添加读写权限。

     

    2:看一下项目解决方案

    为此,为了处理一些重大的技术点,随手封装几个Helper类来处理。

     

    3:解析Helper类

     

    3.1:WebConfigHelper:操作web.config助手类

    说明:

    从上图看,此辅助类只适用于操作AppSetting和ConnectionStrings节点,

    基本操作就是Get取值与Set赋值,最后就是Save保存文件。

    PS:由于后面会有整个项目源码下载,所以细节代码就不贴了。

     

    3.2 : IISWebSiteManager:操作IIS站点

    说明:

    通过此类,可以轻松操作IIS站点的创建和删除、停止与启动等功能。

    PS:Xp下同时只能启动一个站点,所以秋色园QBlog安装工具界面上有提示,先停止默认站点。

     

    3.3:IISHelper:操作IIS

    说明:

    IIS操作相对简单,就是启动,停止和重启。

     

    3.4:IOHelper:简单的IO操作

    说明:

    此类主要用于路径检查,主要是由于系统安装不一定在C盘,所以需要检测多个盘符,同时,附带一个对文件夹添加everyone用户,并设置读写的权限。

    PS:好多网友在Xp下安装后,发现写权限设置并没有生效,这个原因,个人猜想可能是:

    1:可能是[工具-文件夹选项-简单文件共享]的勾没去掉时,所以设置不了写权限

    2:可能是文件的只读属性问题

     

    4:Winform布局及Helper相关类的调用

    有了上述几个Helper的相助之后,剩下的也就是布局下界面,然后进行一些常规的调用工作了。

    常规代码比较多,这里只截方法名,详细代码自行阅读源码了。

    其它说明:

    在点击“创建站点”时,会有一个多线程动作产生,然后输出一系列提示文字。

    在线程中,一般是无法对控件进行操作的,简单的处理方法是设置一下form的属性:

    Form1.CheckForIllegalCrossThreadCalls = false;

    三:源码下载

    源码下载链接地址: QBlogInstall.rar  欢迎感兴趣者下载研究,并激情的在评论里留下青春的印迹。

  • 相关阅读:
    shell学习(15)- eval及shell No such file or directory解决办法
    30张图带你彻底理解红黑树
    linux中$@,$*,$0,$$,$?参数的含义
    QPS,TPS,吞吐量,响应时间详解及关系
    shell学习(14)- who
    SpringBoot 入门
    创建 Java 项目
    部分 GIT 命令
    Spark Executor Task 的执行和数量
    Ubuntu 18 单机安装 HDP 3
  • 原文地址:https://www.cnblogs.com/cyq1162/p/1993377.html
Copyright © 2020-2023  润新知