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

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

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

本人答复:

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

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

 

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

 

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

 

1:web.config配置界面

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

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

 

2:新建网站

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

 

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

 

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

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

 

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

 

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

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

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

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

 

2:看一下项目解决方案

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

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

 

3:解析Helper类

 

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

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

说明:

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

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

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

 

3.2 : IISWebSiteManager:操作IIS站点

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

说明:

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

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

 

3.3:IISHelper:操作IIS

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

说明:

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

 

3.4:IOHelper:简单的IO操作

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

说明:

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

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

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

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

 

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

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

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

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

其它说明:

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

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

Form1.CheckForIllegalCrossThreadCalls = false;

 

三:源码下载

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

 

你可能感兴趣的:(Blog)