DESCRIPTION:
SC is a command line program used for communicating with the
NT Service Controller and services.
USAGE:
sc [command] [service name] ...
The option has the form "\\ServerName"
Further help on commands can be obtained by typing: "sc [command]"
Commands:
query-----------Queries the status for a service, or
enumerates the status for types of services.
queryex---------Queries the extended status for a service, or
enumerates the status for types of services.
start-----------Starts a service.
pause-----------Sends a PAUSE control request to a service.
interrogate-----Sends an INTERROGATE control request to a service.
continue--------Sends a CONTINUE control request to a service.
stop------------Sends a STOP request to a service.
config----------Changes the configuration of a service (persistant).
description-----Changes the description of a service.
failure---------Changes the actions taken by a service upon failure.
qc--------------Queries the configuration information for a service.
qdescription----Queries the description for a service.
qfailure--------Queries the actions taken by a service upon failure.
delete----------Deletes a service (from the registry).
create----------Creates a service. (adds it to the registry).
control---------Sends a control to a service.
sdshow----------Displays a service's security descriptor.
sdset-----------Sets a service's security descriptor.
GetDisplayName--Gets the DisplayName for a service.
GetKeyName------Gets the ServiceKeyName for a service.
EnumDepend------Enumerates Service Dependencies.
The following commands don't require a service name:
sc
boot------------(ok | bad) Indicates whether the last boot should
be saved as the last-known-good boot configuration
Lock------------Locks the Service Database
QueryLock-------Queries the LockStatus for the SCManager Database
EXAMPLE:
sc start MyService
不要直接破坏注册表。使用SC命令行工具。即SC CREATE
与Windows中大多数“感知”的东西一样,答案是“注册表”。
看看这篇微软知识库文章:http://support.microsoft.com/kb/103000
搜索“一个可以由服务控制器启动并遵循服务控制协议的Win32程序”,这是您感兴趣的服务类型。
服务注册(KEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services的内容 \myservice)携带有关服务的信息,包括它的可执行位置、失败时的操作(停止操作系统?),在此之前必须启动哪些服务,它以何种用户身份运行。
至于服务控制协议,程序的main()应该调用一个Windows API调用,为服务设置开始、停止、暂停的回调。你在回拨中做什么都取决于你。
下面是将python脚本作为服务安装的代码,用python编写:)
http://code.activestate.com/recipes/551780/
这篇文章也可以帮助你:
http://essiene.blogspot.com/2005/04/python-windows-services.html
相关问题 更多 >
编程相关推荐