标题: [其他] 把任何可执行文件(包括批处理)当作服务 runassrv.exe [打印本页]
作者: Batcher 时间: 2009-3-20 21:56 标题: 把任何可执行文件(包括批处理)当作服务 runassrv.exe
友情提示:这个命令行工具会被部分杀毒软件干掉,请自行斟酌是否使用。
下载地址:http://cndos.fam.cx/forum/viewthread.php?tid=21426
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
1.1.0.628 版新增内容:
■ 所有 Action (例如:add / remove 等)无需再加前缀。
■ 新增 pause / continue 操作。
■ 现在开始,一个 runassrv 服务可以并发运行多个 /cmdline 指定的应用。
■ runassrv.exe 本身不需要放入系统搜索路径中了。
■ 新增 control 操作,向指定的服务发送控制码。
■ 新增 listsrv 操作,列出所有服务和驱动,支持很多过滤条件。
■ 新增 -logfile 和 -loglevel 选项,日志记录功能。
■ 新增 -unstoppable 系统服务管理器将拒绝停止一个以该选项安装的服务。
■ 内存收缩策略,典型情况下内存开销少于 300KB。
■ 解决了在某些系统上 start / stop 命令无效的问题。
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
前两年写的小东西,发给大家乐呵乐呵~
Run As Service
把任何可执行文件(包括批处理和角本)当作系统服务运行的工具
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
介绍:
■ 将任何可执行文件作为系统服务运行。
■ 开始主要是为了移植一些linux 的 daemon;也可以用于在启动任何应用程序和维护性角本。
■ 安静地运行,除非指定了 Interactive 模式,否则不会弹出任何窗口。
■ 无需登陆,系统启动后自动运行,无需等待用户登陆完毕。
■ 作为附带的功能,支持启动、停止和删除任何系统服务。
■ 完整接管系统服务管理器的指令(启动、停止等等)。运行的程序终止后,自动向服务管理器提交状态同时自身退出,不会驻留内存。
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
帮助屏幕:- C:\Documents and Settings\Administrator>
- #runassrv
-
- ===========================================================================
- Run As Service Ver 1.1.0.625 by BaiYang / 2004 - 2006, Freeware
- ===========================================================================
- Run any program as a Service
-
- USAGE: runassrv <Action> <Options>
- ===========================================================================
- Actions:
- add - Add a Service.
- remove - Remove a Service.
- start - Start a Service.
- stop - Stop a Service.
- pause - Pause a Service.
- continue - Continue a paused Service.
- control - Control a service by send it a op-code
- listsrv - List all installed services on local system
- listgrp - List all service load order groups on local system (by start
- order).
- -h - this screen
- ===========================================================================
- Options:
- -cmdline - when the service start, witch program you want to run.
- -name - the service name.
- -dispname - service's display name in service manager
- -desc - service's description in service manager
- DEFAULT: none
- -type - service type, can be:
- FileSystemDriver
- KernelDriver
- OwnProcess (DEFAULT)
- ShareProcess
- InteractiveProcess
- NOTE: set this option incorrectly may endanger your system!
- -starttype - service start type, can be:
- SystemStart
- BootStart
- AutoStart (DEFAULT)
- DemandStart
- Disabled
- NOTE: set this option incorrectly may endanger your system!
- -errctl - service error control policy, can be:
- ErrorIgnore
- ErrorNormal (DEFAULT)
- ErrorSevere
- ErrorCritical
- NOTE: set this option incorrectly may endanger your system!
- -group - specify service load order group
- DEFAULT: none
- -depen - names of services or load ordering groups that the system
- must start before this service, delimited by '/'
- DEFAULT: none
- -user - specifies the name of the account under which the service
- should run.
- DEFAULT: LocalSystem
- -pass - contains the password to the account name
- DEFAULT: none
- -priority - priority of the program you want to run, can be:
- Idle
- BelowNormal
- Normal (DEFAULT)
- AboveNormal
- High
- RealTime
- -unstoppable - make service unstoppable by system service control manager.
- -opcode - for "control", specify the operation code.
- -logfile - specify the logging target.
- DEFAULT: don't log to file.
- -loglevel - specify the lowest logging level, can be:
- DebugOnly (Most Detail)
- Info
- Warning
- Error (DEFAULT)
- FatalError
- Disabled (Close Logging Output)
- ===========================================================================
- Special Options With "listsrv":
- -name - list service name that match the wildcard pattern
- DEFAULT: *
- -dispname - service display name's wildcard pattern.
- DEFAULT: *
- -pid - service belong to specified process.
- DEFAULT: any
- -type - specify service types to be match, delimite by "/".
- DEFAULT: any
- -starttype - specify service starttypes to be match, delimite by "/".
- DEFAULT: any
- -group - service belong to the load order group
- DEFAULT: any
- -state - service's current state, can be:
- active
- inactive
- DEFAULT: any
- ===========================================================================
- Examples:
- runassrv add /cmdline:"c:\tools\myapp.exe -arg1 -arg2" /name:"mysrv"
- runassrv add /cmdline:myapp.exe /cmdline:yourapp.exe /name:mysrv
- runassrv add /cmdline:notepad /cmdline:vi.bat /type:interactiveprocess /priority:AboveNormal /name:testsrv /logfile:C:\test.log /loglevel:debugonly /dispname:"My Test Service" /desc:"This is a Test Service"
-
- runassrv start /name:wuauserv
- runassrv stop /name:wuauserv
- runassrv pause /name:iisadmin
- runassrv control /name:wuauserv /opcode:1
-
- runassrv listsrv /name:w*
- runassrv listsrv /type:KernelDriver/FileSystemDriver
- runassrv listsrv /starttype:SystemStart/BootStart
- runassrv listsrv /group:pnp_tdi
- runassrv listsrv /pid:1234
- runassrv listgrp
复制代码
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
简单中文帮助:复制代码
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
版权:免费软件;作者不承担任何责任。您可以将它用于任何用途,只要不做坏事
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
联系作者:http://www.cn-dos.net/forum 或 [email]asbai@msn.com[/email]
原文地址:http://www.cn-dos.net/forum/viewthread.php?tid=21426
作者: lxzzr 时间: 2009-7-13 13:29
其实这样子也行,功能没有这个强大,待完善(只在这里加了一个参数:i).....-
- @echo off
- setlocal enabledelayedexpansion
- if "%1" == "/?" goto :_help
- if "%1" == "-i" goto :_start
- echo Unknown parameters ^^!
- exit /b
- :_start
- if not exist %2 (
- echo System can not find the specified file ^^!
- exit /b
- )
- set "path_name=CMD /K START %~2"
- set "wpws=wmic path Win32_Service"
- %wpws% where name='System start' delete>nul 2>nul
- for /f "usebackq skip=5 tokens=2 delims==;" %%a in (
- `"%wpws% call create Name="System start" DisplayName="System start" PathName="!path_name!" ErrorControl="0" DesktopInteract="-1"^&
- %wpws% where "name='System start'" call startservice"`
- ) do (
- set /a temp_n+=1
- if !temp_n! == 1 (
- if "%%a" == " 0" (
- echo Service installed successfully ^^!
- ) else (
- echo Service failed to install ^^!
- exit /b
- )
- )
- if !temp_n! == 3 (
- if "%%a" == " 7" (
- echo Service to start successfully ^^!
- ) else (
- echo Service failed to start ^^!
- )
- )
- )
- exit /b
- :_help
- echo.
- echo By:lxzzr lxzzr@21cn.com
- echo.
- echo Usage: Install -i [drive:][path][filename]
- echo.
- echo.
- exit /b
-
-
-
- 使用格式:Install -i [drive:][path][filename]
复制代码
[ 本帖最后由 lxzzr 于 2009-7-13 13:33 编辑 ]
作者: swust1 时间: 2009-11-13 02:09 标题: ha
kankan1321231321321231231231321dfgdfgdf
作者: lxzzr 时间: 2009-11-21 19:49 标题: 回复 4楼 的帖子
那你认为什么是“厉害”呢?
作者: 523066680 时间: 2009-12-1 12:10
化繁为简是厉害,只能说归类为厉害一类
看牛顿(好像是……)说的:
把复杂的事情看简单可以发现新定律,把简单的事情看得复杂可以发现新领域
[ 本帖最后由 523066680 于 2009-12-1 12:15 编辑 ]
作者: ebhb 时间: 2010-5-9 13:14
请教一下楼主,能不能在启动前替换usrinit.exe,因为很多机器狗把这个文件替换成病毒程序。
作者: duyang12003 时间: 2015-9-18 14:27
最近一直在的,在看有关窗口句柄关闭的资料,哎,头大
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |