修改windows服务描述信息

作者在 2010-09-06 14:24:35 发布以下内容

void  ReconfigureService(LPSTR lpServiceName,   LPSTR lpDesc)  
{  
    SC_HANDLE schSCManager = ::OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS);
    if(schSCManager != NULL)
    {
        //Need to acquire database lock before reconfiguring.  
        SC_LOCK sclLock = LockServiceDatabase(schSCManager);  
        if(sclLock != NULL)  
        {
            //Open a handle to the service.  
            SC_HANDLE schService = OpenService(  
    schSCManager,                       //   SCManager   database  
    lpServiceName,                     //   name   of   service  
    SERVICE_CHANGE_CONFIG);   //   need   CHANGE   access  
            if(schService != NULL)  
            {
    SERVICE_DESCRIPTION sdBuf;
    sdBuf.lpDescription = lpDesc;
    if(ChangeServiceConfig2(
     schService, SERVICE_CONFIG_DESCRIPTION,
     &sdBuf))
    {
     //MessageBox(NULL, "Change   SUCCESS ", " ",MB_SERVICE_NOTIFICATION);  
    }
    CloseServiceHandle(schService);  
            }
            UnlockServiceDatabase(sclLock);  
        }  
        CloseServiceHandle(schSCManager);  
    }
}
默认分类 | 阅读 2893 次
文章评论,共0条
游客请输入验证码
浏览52307次
文章分类
最新评论