`
chenzhou123520
  • 浏览: 4250156 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

使用SC创建和删除windows服务

阅读更多

使用SC命令来创建windows服务

命令格式:

 

sc [servername] create Servicename [Optionname= Optionvalues]

 

servername

可选,可以使用双斜线,如\\\\myserver,也可以是\\\\192.168.0.1来操作远程计算机。如果在本地计算机上操作就不用添加任何参数。

Servicename

在注册表中为service key制定的名称。注意这个名称是不同于显示名称的(这个名称可以用net start和服务控制面板看到),而SC是使用服务键名来鉴别服务的。

Optionname 

    这个optionname和optionvalues参数允许你指定操作命令参数的名称和数值。注意,这一点很重要在操作名称和等号之间是没有空格的。

    如果你想要看每个命令的可以用的optionvalues,你可以使用sc command这样的格式。这会为你提供详细的帮助。

Optionvalues

    为optionname的参数的名称指定它的数值。有效数值范围常常限制于哪一个参数的optionname。如果要列表请用sc command来询问每个命令。

 

 

Optionname--Optionvalues描述

type=----own, share, interact, kernel, filesys

关于建立服务的类型,选项值包括驱动程序使用的类型,默认是share。

start=----boot, sys tem, auto, demand, disabled

关于启动服务的类型,选项值包括驱动程序使用的类型,默认是demand(手动)。

error=----normal, severe, critical, ignore

当服务在导入失败错误的严重性,默认是normal。

binPath=--(string)

服务二进制文件的路径名,这里没有默认值,这个字符串是必须设置的。

group=----(string)

这个服务属于的组,这个组的列表保存在注册表中的ServiceGroupOrder下。默认是nothing。

tag=----(string)

如果这个字符串被设置为yes,sc可以从CreateService call中得到一个tagId。然而,SC并不显示这个标签,所以使用这个没有多少意义。默认是nothing

depend=----(space separated string)有空格的字符串。

在这个服务启动前必须启动的服务的名称或者是组。

obj=----(string)

账号运行使用的名称,也可以说是登陆身份。默认是localsys tem

Displayname=--(string)

一个为在用户界面程序中鉴别各个服务使用的字符串。

password=--(string)

一个密码,如果一个不同于localsys tem的账号使用时需要使用这个。

Optionvalues

    Optionname参数名称的数值列表。参考optionname。当我们输入一个字符串时,如果输入一个空的引用这意味着一个空的字符串将被导入。

 

需要注意的是:

1. 在option= xxxxx格式中,“=”号和后面的内容一定要有空格,如depend=  Tcpip

2. 如果命令中的需要进行双引号的嵌套,使用反斜杠加引号 " \" " 来进行转义处理。

 

示例

 

sc create svnservice binpath= "\"D:\Servers\Subversion\bin\svnserve.exe\" --service -r E:\SVN\repository" displayname= "SVNService" depend= Tcpip start= auto

 

使用SC命令删除windows服务

 

sc delete

从注册表中删除服务子项。如果服务正在运行或者另一个进程有一个该服务的打开句柄,那么此服务将标记为删除。

语法

 

sc [ServerName] delete [ServiceName]

参数

ServerName 

指定服务所在的远程服务器名称。该名称必须使用 UNC 格式(“\\myserver”)。要在本机上运行 SC.exe,请忽略此参数。 

ServiceName 

指定由 getkeyname 操作返回的服务名。 

示例

 

sc delete svnservice

失败提示:DeleteService FAILED 1072

在删除服务时可能会遇上一个失败提示“DeleteService FAILED 1072: The specified service has been marked for deletion.”,或者运行没报错,但服务仍然在服务管理列表中。 

这是因为server被卸载掉时,会检查状态(实际是标记状态,启动服务时检查,确定定启动或是卸载)。如果是启动状态,则在服务停止时自动卸载;否则立即卸载。所以报错的原因可能是因为服务处于启动状态,所以无法删除,如果需要立即删除,需要使用命令终止服务,命令格式如下:

 

sc stop ServiceName

 

 示例:

 

sc stop svnservice
 

 

参考资料:http://www.cnblogs.com/rainbowzc/archive/2008/10/04/1303731.html

分享到:
评论
1 楼 NNBchuang 2012-04-16  
谢谢,问题解决了!

相关推荐

    vc创建windows服务

    找了n多据说是创建windows服务的vc代码,发现了n多问题。...删除服务请使用sc delete。 经过一番折腾。形成了一个初步框架,该框架内。通过改写我修改的线程函数。你可以做你想做的任何事情。 相信我,8分绝对不亏。

    创建Windows服务程序

    创建Windows服务程序,产生的exe可执行程序。可通过sc命令创建服务,开启服务,终止服务与删除服务,可在ServiceMain函数中修改可执行程序部分的内容,通常为一个死循环的可执行代码部分。

    Windows服务程序

    编译后定位到程序目录下,而后使用PureSsl.exe /service注册,使用net start PureSsl启动服务,使用net Stop Puressl停止服务,使用sc delete PureSsl删除服务。在启动服务后使用VC2008中的Debug菜单下的Attach to ...

    insvr.exe - bat服务启动器

    服务创建和删除: sc delete demo sc create demo binPath= "E:\insvr.exe d:\log.log d:\run.bat" start= auto DisplayName= "demos" or binPath= "E:\insvr.exe d:\log.log notepad.exe" 服务启动和停止: sc start...

    redis6.0.7z

    reids6.x win10版本完美编译,创建环境变量,稳定使用.将bat文件或exe程序注册成windows服务 命令行使用sc命令. 关于sc命令的详解,请自行查看帮助(sc /?),在此只简单提及如何加入系统服务功能. 加入服务: sc create ...

    精通windows server 2008 命令行与powershell 电子书PDF单文件完整版

    本书全面地介绍了Windows Server 2008命令行、PowerShell和脚本的使用,包括文件和文件夹的管理、磁盘管理、系统管理、活动目录管理、网络管理、网络服务管理、系统诊断、故障恢复、系统安全、批处理和配置文件,...

    精通windows server 2008 命令行与powershell电子书PDF版(第一卷)

    本书全面地介绍了windows server 2008命令行、powershell和脚本的使用,包括文件和文件夹的管理、磁盘管理、系统管理、活动目录管理、网络管理、网络服务管理、系统诊断、故障恢复、系统安全、批处理和配置文件,...

    精通windows server 2008 命令行与powershell电子书PDF版(第三卷)

    本书全面地介绍了windows server 2008命令行、powershell和脚本的使用,包括文件和文件夹的管理、磁盘管理、系统管理、活动目录管理、网络管理、网络服务管理、系统诊断、故障恢复、系统安全、批处理和配置文件,...

    精通windows server 2008 命令行与powershell 电子书PDF版(第四卷)

    本书全面地介绍了windows server 2008命令行、powershell和脚本的使用,包括文件和文件夹的管理、磁盘管理、系统管理、活动目录管理、网络管理、网络服务管理、系统诊断、故障恢复、系统安全、批处理和配置文件,...

    MySQL安装教程windows64位

    SC删除的MySQL 在执行上面安装服务 服务安装成功之后通过命令 net start mysql 启动MySQL的服务   总体三步走 1初始化MySQL 2创建服务 3启动服务   到这你的MySQL已经是安装好了!   连接...

    mongodbWindows3.6.2

    1,下载安装包 ...下载完成后,把安装文件放置到你要安装的目录下面。...5,启动,停止,删除mongodb服务(要在管理下面执行) 启动服务 net start MongoDB 停止服务 net stop MongoDB 移除服务 sc.exe delete MongoDB

    WinRAR_3.91_beta_1_SC.exe

    WinRAR EULA (最终用户许可协议) 使用和发布许可 -------------------------------------------------------------------------------- RAR (和它的 Windows 版本 - WinRAR) 压缩文件管理器是共享软件。这意味着...

    精通windows server 2008 命令行与powershell电子书PDF版(第二卷)

    本书全面地介绍了windows server 2008命令行、powershell和脚本的使用,包括文件和文件夹的管理、磁盘管理、系统管理、活动目录管理、网络管理、网络服务管理、系统诊断、故障恢复、系统安全、批处理和配置文件,...

    数据库原理实验报告整合

    要求:当主表STUDENT中的主码SNO和COURSE中的主码CNO发生修改或删除时,SC表中的相应外码做CASCADE操作。 (三)知识巩固 用SQL-DDL语言创建“产品订购”数据库,包含四个数据表S、P、J和SPJ,表结构及内容如下...

Global site tag (gtag.js) - Google Analytics