Windows服务之启动、停止、暂停、继续

原文:Windows服务之启动、停止、暂停、继续

Windows服务之启动、停止、暂停、继续
2011-11-09 15:07:37
    我来说两句
收藏
   我要投稿   
[字体:
]

SC_HANDLE   scm,sHandle;

SERVICE_STATUS  
ServiceStatus;

scm=OpenSCManager(NULL,NULL,SC_MANAGER_ALL_ACCESS);

if   (scm!=NULL)

{

//启动service

sHandle=OpenService(scm, "GwbnService",SERVICE_START);

if(sHandle!=NULL)

{

StartService(sHandle,0,NULL))//开始Service

}

//停止Service

sHandle=OpenService(scm,
"GwbnService",SERVICE_STOP|SERVICE_QUERY_STATUS);

if(sHandle!=NULL)

QueryServiceStatus(sHandle,&ServiceStatus);

if(ServiceStatus.dwCurrentState  
==  
SERVICE_RUNNING  
||  
ServiceStatus.dwCurrentState  
==   SERVICE_PAUSED)

{

ControlService(sHandle,SERVICE_CONTROL_STOP,&ServiceStatus);

}

//暂停Service

sHandle=OpenService(scm,
"GwbnService",SERVICE_PAUSE_CONTINUE|SERVICE_QUERY_STATUS);

if(sHandle!=NULL)

QueryServiceStatus(sHandle,&ServiceStatus);

if(ServiceStatus.dwCurrentState  
==   SERVICE_RUNNING)

{

ControlService(sHandle,SERVICE_CONTROL_PAUSE,&ServiceStatus);

}

//继续Service

sHandle=OpenService(scm,
"GwbnService",SERVICE_PAUSE_CONTINUE|SERVICE_QUERY_STATUS);

if(sHandle!=NULL)

QueryServiceStatus(sHandle,&ServiceStatus);

if(ServiceStatus.dwCurrentState  
==   SERVICE_PAUSED)

{

ControlService(sHandle,SERVICE_CONTROL_CONTINUE,&ServiceStatus);

}

}

注意:服务有服务名称和显示名称之分,这里需要的是服务名称

上一篇:谈谈BEM规范(含代码)


下一篇:更好用的css命名方式——BEM命名