当我们开发一个后台应用时,通常没有界面,并且会把它注册成一个服务程序。但是,如果普通用户要对这个服务进行重启,关闭等操作,他必须要到控制面板 - 管理工具 - 服务那里才能进行。更重要的是,机器启动后,用户并不能明显地看到服务是否在运行等信息,所以,最好为该应用添加一个常驻托盘并能动态显示运行状况的功能(比如瑞星等杀毒程序就有这个功能)。那么,是不是我们需要为应用特意实现这个功能呢?答案是不用,因为我们有 apache !
作为一个开源的 web 服务器, apche 除了给我们提供 web 服务之外,还有一些小工具一起发布在源码包里,其中一个名字叫 ApacheMonitor ,请将这个工具的源码考出来,稍作改动就可以自制一个专用的服务管理程序,并且马上具备以下功能:
1) 托盘图标驻留
2) 托盘图标动态显示服务运行情况
3) 托盘图标右键菜单
4) 托盘图标左键菜单,用来管理具体服务
5) 服务管理配置窗口(包含服务启动,停止,日志等)
6) 和应用服务是独立的,两者互不干扰
那么,我们到底需要怎么做呢?很简单,
1) 用 VC6 打开 ApacheMonitor 工程的工作空间
2) 更改一下代码中的几处地方,主要是:我们后台应用的判断条件(比如:可执行文件的路径名中含有的关键字,这个用来判断哪些服务是我们所关心的)以及应用的互斥体名字(用来识别应用是否重复启动),见后面源码中的粗体字部分
3) 如果你对外观不满意,可以在资源文件中更改文字 ﹑ 图标等信息,让它完全满足您的要求(开源就是好 ^_^ )
4) 编译一下,执行看看效果,这是我制作的一个样例(还没有换掉 apache 的大羽毛):
详细出处参考:http://www.itqun.net/content-detail/208663.html