HRESULT CaptureManager::StopPreview() { HRESULT hr = S_OK; if (m_pEngine == NULL) { return MF_E_NOT_INITIALIZED; } if (!m_bPreviewing) { return S_OK; } hr = m_pEngine->StopPreview(); if (FAILED(hr)) { goto done; } WaitForResult(); if (m_fPowerRequestSet && m_hpwrRequest != INVALID_HANDLE_VALUE) { PowerClearRequest(m_hpwrRequest, PowerRequestExecutionRequired); m_fPowerRequestSet = false; } done: return hr; }
/// <summary> /// Delete the custom power plan. /// </summary> VOID PowerSchemes::ClearCustomPowerPlan() { if(!PowerClearRequest(hPowerRequest, PowerRequestSystemRequired)) { //printf("PowerClearRequest failed\n"); } CloseHandle(hPowerRequest); *mySchemeGuid = GUID_MIN_POWER_SAVINGS; ApplyPowerScheme(*mySchemeGuid); /************************************************************************/ /* Second: Delete application power scheme */ /************************************************************************/ if(!DeleteScheme(GUID_POWER_AWARE_SMJ)) { //printf("DeleteScheme failed\n"); } }