sc.exe create

在注册表和服务控制管理器数据库中为服务创建子项和条目。

语法

sc.exe [<servername>] create [<servicename>] [type= {own | share | kernel | filesys | rec | interact type= {own | share}}] [start= {boot | system | auto | demand | disabled | delayed-auto}] [error= {normal | severe | critical | ignore}] [binpath= <binarypathname>] [group= <loadordergroup>] [tag= {yes | no}] [depend= <dependencies>] [obj= {<accountname> | <objectname>}] [displayname= <displayname>] [password= <password>]

参数设置

参数 描述
<servername> 指定服务所在的远程服务器的名称。 该名称必须使用通用命名约定 (UNC) 格式(例如 \myserver)。 若要在本地运行 SC.exe,请不要使用此参数。
<servicename> 指定 getkeyname 操作返回的服务名称。
type= {own | share | kernel | filesys | rec | interact type= {own | share}} 指定服务类型。 选项包括:
  • own - 指定在其自己的进程中运行的服务。 它不会与其他服务共享可执行文件。 这是默认值。
  • share - 指定作为共享进程运行的服务。 它会与其他服务共享可执行文件。
  • kernel - 指定驱动程序。
  • filesys - 指定文件系统驱动程序。
  • rec - 指定文件系统识别的驱动程序,用于标识计算机上使用的文件系统。
  • interact - 指定可与桌面交互、接收用户输入的服务。 交互式服务必须在 LocalSystem 帐户下运行。 此类型必须与 type= own 或 type= share 结合使用(例如,type= 交互类型= own)。 单独使用 type= interact 将生成错误。
start= {boot | system | auto | demand | disabled | delayed-auto} 指定服务的启动类型。 选项包括:
  • boot - 指定由启动加载程序加载的设备驱动程序。
  • system - 指定在内核初始化期间启动的设备驱动程序。
  • auto - 指定每次重启计算机时自动启动的服务,即使没有人登录到计算机,该服务也会运行。
  • demand - 指定必须手动启动的服务。 如果没有指定 start=,则此为默认值。
  • disabled - 指定无法启动的服务。 要启动已禁用的服务,请将启动类型更改为其他某个值。
  • delayed-auto - 指定在其他自动服务启动后短时间内自动启动的服务。
error= {normal | severe | critical | ignore} 指定在计算机启动时,服务无法启动时出现的错误的严重性。 选项包括:
  • normal - 指定记录错误并显示消息框,通知用户服务无法启动。 启动将继续。 这是默认设置。
  • severe - 指定在可能的情况下记录错误。 计算机尝试使用上次已知的良好配置重启。 结果是计算机能够重启,但服务可能仍无法运行。
  • critical - 指定在可能的情况下记录错误。 计算机尝试使用上次已知的良好配置重启。 如果上次已知的良好配置失败,则启动也会失败,启动进程将停止并出现停止错误。
  • ignore - 指定记录错误并继续启动。 除了在事件日志中记录错误之外,不会向用户发出通知。
binpath= <binarypathname> 指定服务二进制文件的路径。 binpath= 没有默认值,必须提供此字符串。
group= <loadordergroup> 指定此服务所属的群组的名称。 群组列表存储在注册表中的 HKLM\System\CurrentControlSet\Control\ServiceGroupOrder 子项中。 默认值为 null。
tag= {yes | no} 指定是否从 CreateService 调用获取 TagID。 标记仅用于引导-启动和系统-启动驱动程序。
depend= <dependencies> 指定必须在此服务之前启动的服务或群组的名称。 名称由正斜杠 (/) 分隔。
obj= {<accountname> | <objectname>} 指定运行服务的帐户的名称,或指定要在其中运行驱动程序的 Windows 驱动程序对象的名称。 默认设置是 LocalSystem。
displayname= <displayname> 指定用于在用户界面程序中标识服务的友好名称。 例如,一个特定服务的子项名称是 wuauserv,它具有更友好的显示名称“自动更新”。
password= <password> 指定密码。 如果使用 LocalSystem 帐户以外的帐户,则这是必需操作。
/? 在命令提示符下显示帮助。

注解

  • 每个命令行选项(参数)都必须将等号包括为选项名称的一部分。

  • 选项与其值之间需要空格(例如 type= own。 如果省略空格,操作将失败。

示例

若要为 NewService 服务创建和注册新的二进制路径,请键入:

sc.exe \\myserver create NewService binpath= c:\windows\system32\NewServ.exe
sc.exe create NewService binpath= c:\windows\system32\NewServ.exe type= share start= auto depend= +TDI NetBIOS

若要详细了解 sc.exe 命令,请参阅 SC 命令