zoukankan      html  css  js  c++  java
  • 設置電源狀態

    //hibernate and standby
    int CAutoPowerOnShutdownDlg::SetPower(BOOL   bSuspend,BOOL   bForce)
    {            
     TOKEN_PRIVILEGES   tp;          
     HANDLE   hToken;  
     LUID   luid;  
     LPTSTR   MachineName=NULL;    

    //為當前進程獲得關閉系統休眠系統的特權
    // 取得当前进程的[Token](标识)句柄,(TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY) == 0x0028 

     if(!OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES,&hToken   ))  
     {  
      return   RTN_ERROR;  
     } 

    // 取得关闭系统的[LUID](本地唯一的标识符)值  
     if(!LookupPrivilegeValue(MachineName,   SE_SHUTDOWN_NAME,   &luid))  
     {  
      return   RTN_ERROR;  
     }  

    // 设置特权数组的元素个数 
     tp.PrivilegeCount   =   1;  

    //設置特權數組的luid
     tp.Privileges[0].Luid   =   luid;  

    // 设置[LUID]的属性值 
     tp.Privileges[0].Attributes   =   SE_PRIVILEGE_ENABLED; 

    // 为当前进程取得关闭系统的特权  
     AdjustTokenPrivileges(hToken,   FALSE,   &tp,   sizeof(TOKEN_PRIVILEGES),NULL,   NULL   );  
     SetSystemPowerState(bSuspend,bForce);  

     return   0;  
    }

  • 相关阅读:
    inline-block图文布局
    display: inline-block换行问题
    前端Fiddler高级调试技巧
    开发人员linux命令总结
    随笔-系统安装
    Fiddler高阶技能-项目文件代理
    译:如何使用时间轴工具
    jquery 选择器之children与find
    ASP.NET 大文件下载的实现思路及代码
    Git 使用指南
  • 原文地址:https://www.cnblogs.com/lzjsky/p/1879851.html
Copyright © 2011-2022 走看看