返回列表 发帖

[技术文章] 在Windows系统中手动添加服务的两种方式

方法一:利用导出注册表方式添加服务
WINDOWS系统的服务主要体现在注册表中,其位置在【HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services】,正好我系统中有SQL SERVER以服务启动,所以可以直接导出SQL SERVER服务的注册表项【HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/MSSQLSERVER】为.reg文件,然后导入到对方的系统中,并在对方系统的注册表中找到这个新增的项,把其中涉及到路径的地方修改为正确的路径即可(ImagePath键值)。至于其他的什么随机启动可以在系统的服务中修改。

修改完成以后重启系统,这一步很重要!!!否则你在services.msc的服务中看不到这个新增的服务,也无法启动。原因是服务管理器里显示的内容是内存中的内容,这些内容是系统启动的时候遍历注册表预读到系统中的。重启以后,一切都OK了。



方法二:利用命令sc create方式添加服务
sc命令是WINDOWS中用来管理服务器的一个命令,sc create是其子项,用来创建服务,利用sc create /?命令可以查看起帮助,如下:

DESCRIPTION:
        Creates a service entry in the registry and Service Database.
USAGE:
        sc <server> create [service name] [binPath= ] <option1> <option2>...

OPTIONS:
NOTE: The option name includes the equal sign.
type= <own|share|interact|kernel|filesys|rec>
       (default = own)
start= <boot|system|auto|demand|disabled>
       (default = demand)
error= <normal|severe|critical|ignore>
       (default = normal)
binPath= <BinaryPathName>
group= <LoadOrderGroup>
tag= <yes|no>
depend= <Dependencies(separated by / (forward slash))>
obj= <AccountName|ObjectName>
       (default = LocalSystem)
DisplayName= <display name>
password= <password>


OK,现在根据帮助来拼装命令就可以了,如我仿照我的MSSQL SERVER拼装的命令是:

sc create MSSQLSERVER binPath= "C:/program files/mssql/sqlservr.exe" TYPE= "own" start= "auto" TAG= "no" DisplayName= "MSSQLSERVER SERVICES"

拼装好以后在对方的命令行下执行命令就可以了,如果结果返回为sc create的帮助,说明命令中有错误的地方,仔细检查一下参数的名称和空格等。执行成功以后你可以用sc query 来查看这个服务。也可以用sc description来修改服务的描述。如果你不能远程操作对方电脑,你可以把所有要执行的命令写成一个.bat文件传给对方执行。

这条命令是即时生效,会更新内存和注册表,所以你在服务管理(services.msc)下可以直接看到,也不用重启系统!
特别注意:参数[binPath= ]等号后面有空格!!其他参数也一样,赋值最好用引号括起来,避免路径中有空格存在!


PS:
如何查看系统中有哪些服务?
方法1:在【开始菜单】下的【运行】中输入命令services.msc。
方法2:键盘windows键+R直接调出【运行】窗口,输入命令services.msc。
方法3: 在【我的电脑】右键到【管理】,然后找到【服务】选项即可。
欢迎光临:逐梦论坛

返回列表

Powered by Discuz! 7.2   论坛QQ群:逐梦论坛群

© 2001-2021 Comsenz Inc. 鲁公网安备 37120302000001号