//////////////////////////////////////////////////////////// /// /// @brief 获取当前Windows是否有修改电源使用方案的权限 /// /// @param __out bool* cuwpsFlag - 权限标志 /// /// @return HRESULT /// /// @retval S_OK 正常返回 /// @retval 通过GetLastError()返回 /// //////////////////////////////////////////////////////////// HRESULT WindowsPowerLW::CanUserWritePowerScheme( __out bool* cuwpsFlag ) { DEBUG_XCOVER_MARK_LINE; *cuwpsFlag = true; if (!CanUserWritePwrScheme()) { *cuwpsFlag = false; } DEBUG_XCOVER_MARK_LINE; return S_OK; }
static BOOLEAN CreateEnergyList(HWND hwnd) { BOOLEAN retval; POWER_POLICY pp; SYSTEM_POWER_CAPABILITIES spc; hList = hwnd; if (!GetActivePwrScheme(&aps)) return FALSE; if (!ReadGlobalPwrPolicy(&gGPP)) return FALSE; if (!ReadPwrScheme(aps,&pp)) return FALSE; if (!ValidatePowerPolicies(&gGPP,0)) return FALSE; /* if (!SetActivePwrScheme(aps,&gGPP,&pp)) return FALSE; */ if (!GetPwrCapabilities(&spc)) return FALSE; if (CanUserWritePwrScheme()) { // TODO: // Enable write / delete powerscheme button } Pos_InitPage(GetParent(hwnd)); if (!GetActivePwrScheme(&aps)) return FALSE; retval = EnumPwrSchemes(callback_EnumPwrScheme, aps); if(SendMessage(hwnd, CB_GETCOUNT, 0, 0) > 0) { EnableWindow(GetDlgItem(hwndDialog, IDC_DELETE_BTN),TRUE); EnableWindow(GetDlgItem(hwndDialog, IDC_SAVEAS_BTN),TRUE); } return retval; }