曾经在:秋色园QBlog V2.5 后台管理系统源码发布下载 一文中,有网友 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站点
说明:
PS:Xp下同时只能启动一个站点,所以秋色园QBlog安装工具界面上有提示,先停止默认站点。
3.3:IISHelper:操作IIS
说明:
3.4:IOHelper:简单的IO操作

说明:
PS:好多网友在Xp下安装后,发现写权限设置并没有生效,这个原因,个人猜想可能是:
1:可能是[工具-文件夹选项-简单文件共享]的勾没去掉时,所以设置不了写权限
2:可能是文件的只读属性问题
4:Winform布局及Helper相关类的调用
有了上述几个Helper的相助之后,剩下的也就是布局下界面,然后进行一些常规的调用工作了。
常规代码比较多,这里只截方法名,详细代码自行阅读源码了。
其它说明:
在点击“创建站点”时,会有一个多线程动作产生,然后输出一系列提示文字。
在线程中,一般是无法对控件进行操作的,简单的处理方法是设置一下form的属性:
Form1.CheckForIllegalCrossThreadCalls = false;
三:源码下载
源码下载链接地址: QBlogInstall.rar 欢迎感兴趣者下载研究,并激情的在评论里留下青春的印迹。
版权声明:本文原创发表于 博客园,作者为 路过秋天 本文欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则视为侵权。 |
个人微信公众号![]() |
Donation(扫码支持作者):支付宝:![]() |
Donation(扫码支持作者):微信:![]() |
![]() |
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)
2010-03-24 MapXtreme 2005 学习心得 画道路区域(十二)