把任何可执行文件(包括批处理)当作服务
竟然有人专门加我 MSN 询问此工具(Run As Service)和 XP 下的 SC 命令有何不同。实在让人郁闷。
这里澄清一下,首先,一个 windows service 不是普通的可执行程序。一个应用程序想要成为 service,必须按照契约调用标准的 Windows Service API,与 Windows Service Manager 进行正确交互才可以。
也就是说,SC 命令的作用是安装、删除、启动、停止一个 service。而 runassrv 的作用是将任何非 service 程序变成 service。
如果这样说还是不清楚的话,请尝试一下用 SC 把某个批处理或 notepad.exe 添加为服务会发生什么。
下面是Run As Service的示例介绍:
安装飞鸽的服务,设置显示名称,飞鸽的描述,启动服务的时候会启动飞鸽,还会启动记事本
runassrv add /cmdline:notepad /cmdline:c:\ipmsg\ipmsg.exe /type:interactiveprocess /priority:AboveNormal /name:我的飞鸽 /logfile:C:\test.log /loglevel:debugonly /dispname:"飞鸽显示名称" /desc:"这里是飞鸽的描述"
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
1.1.0.628 版新增内容:
■ 所有 Action (例如:add / remove 等)无需再加前缀。
■ 新增 pause / continue 操作。
■ 现在开始,一个 runassrv 服务可以并发运行多个 /cmdline 指定的应用。
■ runassrv.exe 本身不需要放入系统搜索路径中了。
■ 新增 control 操作,向指定的服务发送控制码。
■ 新增 listsrv 操作,列出所有服务和驱动,支持很多过滤条件。
■ 新增 -logfile 和 -loglevel 选项,日志记录功能。
■ 新增 -unstoppable 系统服务管理器将拒绝停止一个以该选项安装的服务。
■ 内存收缩策略,典型情况下内存开销少于 300KB。
■ 解决了在某些系统上 start / stop 命令无效的问题。
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
前两年写的小东西,发给大家乐呵乐呵~
Run As Service
把任何可执行文件(包括批处理和角本)当作系统服务运行的工具
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡