ChangeServiceConfig
ChangeServiceConfig2
CloseServiceHandle
ControlService
CreateService
DeleteService
EnumDependentServices
EnumServicesStatus
GetServiceDisplayName
GetServiceKeyName
Handler
LockServiceDatabase
NotifyBootConfigStatus
OpenSCManager
OpenService
QueryServiceConfig
QueryServiceConfig2
QueryServiceLockStatus
QueryServiceObjectSecurity
QueryServiceStatus
RegisterServiceCtrlHandler
ServiceMain
SetServiceBits
SetServiceObjectSecurity
SetServiceStatus
StartService
StartServiceCtrlDispatcher
UnlockServiceDatabase
这些函数,不难用的
解决方案 »
- 求TControl类中UpdateAnchorRules方法的解释
- 如何获取JPG文件里的工作路径?
- Speech 中文语言
- 这个if怎么不起作用??
- 请教高手,复杂三维报表应该怎样设计数据结构?
- clientdataset怪问题!!!
- 面临毕业设计,各位大哥,谁有关于美容美发的的文档给与参考~
- 怎么现在招聘的都要工作经验?我们应届毕业生能不能投那种要工作经验的公司?
- simpledataset 设置好packetrecord,每次从数据库自动取值出错
- 如何在Delphi中实现网络文件的分段下载
- 关于delphi自定义控件的问题。。。
- 清家荡产SOS!,我能给的分就这些!求救在DELPHI中怎样动态更新和调用AcitiveX组件。
var
hScManager:SC_Handle;
SrvHandle:SC_Handle;
SrvStatus:TServiceStatus;
iStatus:DWord;
lpServiceArgVectors:PChar;
begin
//取得服务数据库的Handle
hScManager:=OpenSCManager('',SERVICES_ACTIVE_DATABASE,SC_MANAGER_ALL_ACCESS);
if hScManager<>0 then
begin
SrvHandle:=OpenService(hScManager,pchar(SrvName),SERVICE_ALL_ACCESS);
if SrvHandle<>0 then
begin
if QueryServiceStatus(SrvHandle,SrvStatus) then
begin
iStatus:=SrvStatus.dwCurrentState;
if iStatus<>SERVICE_START_PENDING then
begin
//如果服务没有开始,则开始之
if not StartService(SrvHandle,0,lpServiceArgVectors) then
begin
AppliCation.MessageBox(pchar('开始'+SrvName+'服务时发生错误。'),'提示',MB_OK+MB_ICONERROR);
end;
end;
end
else
begin
AppliCation.MessageBox(pchar('无法获得'+SrvName+'服务的状态。'),'提示',MB_OK+MB_ICONERROR);
end;
end;
CloseServiceHandle(SrvHandle);
end;
CloseServiceHandle(hScManager);
end;