当前位置: 首页 > news >正文

俄文网站推广网站推广公司推荐

俄文网站推广,网站推广公司推荐,阆中做网站,网页制作的公司多少收入日常开发中,会遇到改变某个服务的参数,并进行重启(例如Redis断电恢复机制) 需要程序拥有UAC权限,并且调用如下API才能对windows服务进行重启: #include "windows.h"#pragma comment(lib, "…

日常开发中,会遇到改变某个服务的参数,并进行重启(例如Redis断电恢复机制)

需要程序拥有UAC权限,并且调用如下API才能对windows服务进行重启:

#include "windows.h"#pragma comment(lib, "advapi32.lib")bool ConfigCenter::ReStartServiceByName(std::string strDestServiceName)
{bool bServiceStatus     = FALSE;SC_HANDLE schSCManager  =  nullptr ;SC_HANDLE schService    =  nullptr ;DWORD dwBytesNeeded     =  0 ;SERVICE_STATUS_PROCESS ssStatus;char szSvcName[MAX_PATH] = {0};memcpy_s(szSvcName,MAX_PATH,strDestServiceName.c_str(),strDestServiceName.length());//! 获取一个服务控制管理器数据库的句柄schSCManager = OpenSCManager(nullptr ,                           // local computernullptr ,                           // ServicesActive databaseSC_MANAGER_ALL_ACCESS);             // full access rightsif(schSCManager == nullptr) {qDebug() << "OpenSCManager fail" << endl;return bServiceStatus;}//! 获取该服务在服务控制管理器数据库中的句柄schService = OpenServiceA(schSCManager,                       // SCM databaseszSvcName,                          // name of serviceSERVICE_ALL_ACCESS/* | DELETE*/);   // full accessif(schService == nullptr) {CloseServiceHandle(schSCManager);qDebug() << "Get a handle to the service fail" << endl;return bServiceStatus;}//! 查询该服务的当前状态if(!QueryServiceStatusEx(schService,                         // handle to serviceSC_STATUS_PROCESS_INFO,             // information level(LPBYTE) &ssStatus,                 // address of structuresizeof (SERVICE_STATUS_PROCESS),    // size of structure&dwBytesNeeded ) )                  // size needed if buffer is too small{CloseServiceHandle(schService);CloseServiceHandle(schSCManager);qDebug() << "QueryServiceStatusEx fail" << endl;return bServiceStatus;}else{switch (ssStatus.dwCurrentState){case  SERVICE_STOPPED:case  SERVICE_STOP_PENDING:qDebug() << szSvcName << " Service status is Stop" << endl;break ;case  SERVICE_PAUSED:case  SERVICE_PAUSE_PENDING:qDebug() << szSvcName << " Service status is Pause" << endl;break ;case  SERVICE_CONTINUE_PENDING:case  SERVICE_RUNNING:case  SERVICE_START_PENDING:qDebug() << szSvcName << " Service status is Running" << endl;bServiceStatus = TRUE;break ;}}//! 停止该服务if(bServiceStatus == TRUE) {SERVICE_STATUS status;if (!ControlService(schService, SERVICE_CONTROL_STOP, &status)) {qDebug() << "ControlService failed with error:" << GetLastError();return !bServiceStatus;}}//! 启动该服务StartService(schService,0,nullptr);Sleep(500);//! 获得服务的当前状态QueryServiceStatusEx(schService,SC_STATUS_PROCESS_INFO,(LPBYTE) &ssStatus,sizeof (SERVICE_STATUS_PROCESS),&dwBytesNeeded );if (SERVICE_RUNNING == ssStatus.dwCurrentState){bServiceStatus = TRUE;}CloseServiceHandle(schService);CloseServiceHandle(schSCManager);return bServiceStatus;
}

参考文章:https://www.cnblogs.com/TechNomad/p/17669231.html

http://www.wangmingla.cn/news/112334.html

相关文章:

  • 可以直接做ppt的网站吗互联网广告推广公司
  • 企业网站模板中文百度seo官方网站
  • 套模版做的网站好优化吗优化seo深圳
  • 旅游网站建设合同谷歌seo网站排名优化
  • html网站开发实战重庆seo网页优化
  • 做网站 新域名 还是西安疫情最新消息
  • 益阳做网站的公司优化用户体验
  • 专做负面的网站用asp做的网站
  • 阿里云服务器做网站宽带营销案例100例
  • 北京猎梦网站建设聊石家庄seo
  • 给网站做灰盒渗透测试需要哪些数据seo课程培训班费用
  • 晋中公司做网站关键词有哪几种
  • 在手机上如何制作网站营销网络是什么
  • 有没有做美食的小视频网站今日新闻联播主要内容
  • 网站后台密码在哪个文件最近大事件新闻
  • 网站域名怎么做变更深圳高端seo外包公司
  • 谁有网站推荐一下好谷歌浏览器网页版入口
  • 看网站建设公司的网站案例提升关键词排名软件哪家好
  • wordpress去掉侧边栏深圳市网络seo推广平台
  • 给漫画网站做推广青岛设计优化公司
  • 做销售网站多少钱百度信息流投放在哪些平台
  • 李连杰做的功夫网站百度官网下载安装
  • 网站域名如何影响seo什么是企业营销型网站
  • html网上购物系统什么是seo文章
  • 怎么做网站上的销售代设计案例网
  • 网站建设的课程设计今日头条关键词工具
  • 企业网站选择第三方还是自己做百度seo引流怎么做
  • 公司注册一站式平台网络商城应该如何推广
  • wordpress注册登录问题seo整站优化一年价格多少
  • 印度人通过什么网站做国际贸易网站统计工具有哪些