金庆的专栏

  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  373 随笔 :: 0 文章 :: 454 评论 :: 0 Trackbacks
有一组程序还有几个脚本,要从普通程序改为服务运行,其实是后台运行,不要弹出界面来。
本来想改程序,写成服务程序,想了想还是简单地用一个服务程序来调用算了。
正好看到一篇XYNTService的文章,正合我意。

XYNTService本身是个服务程序,它可以在INI文件中配置调用的程序,将多个程序运行起来。
但是有些服务程序的通常的限制,按缺省的系统服务运行可以有界面,但是不能访问网络映射盘。
若是以其它网络用户运行程序,就不可能有界面。

当然,我的应用正好不需要界面,在配置里设定无交互界面显示就好。

Windows的服务程序必须有一套管理接口,这点有些烦,一个程序必须从开始就按服务编程。不像Linux上的程序,后台运行就是服务了。

MS Windows 2000 SDK工具中有个srvany,好象就是能让任一个普通程序运行为服务,有了它就像有了Linux上的nohup一样了。不过我没用这个,也没有仔细研究,因为XYNTService是有源代码的,更符合我的心意,而且足够符合我的需求。

有了这个工具,以后就可以大胆地写脚本了,不必理会是服务还是普通程序了。

参考:
[1] 从NT服务启动Windows程序
[2] Start Your Windows Programs From An NT Service
[3] 使用srvinstw和srvany让程序加入到系统服务的方法
posted on 2007-10-09 13:44 金庆 阅读(1326) 评论(4)  编辑 收藏 引用 所属分类: 1. C/C++

评论

# re: 按NT服务运行程序 2007-10-09 21:11 Minidx全文检索
好像是开源的,不过用ant写的那个class比较好,量身定做  回复  更多评论
  

# re: 按NT服务运行程序 2007-10-15 10:46 金庆
@Minidx全文检索
XYNTService是公开源代码的。用ant写的那个class是指哪个?  回复  更多评论
  

# re: 按NT服务运行程序 2007-10-15 11:22 Minidx全文检索
不好意思没说清楚,那个class在这里
http://www.cppblog.com/ant/archive/2007/09/24/32769.html
  回复  更多评论
  

# re: 按NT服务运行程序 2007-10-16 09:52 金庆
@Minidx全文检索
适用条件不同,这是用代码直接写个服务。如果是现成的程序或脚本,没有源码,就不能用了。  回复  更多评论
  


只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理