반응형
Xeno's Study Blog (http://XenoStudy.tistory.com)
- 글쓴이 : xeno
- 출처 : 나 , MSDN , 인터넷자료..
- 기타사항 : EVC4 코딩 / winCE5.0 확인 / windows Mobile 5 확인
무선랜 드라이버 Power State 강제변환
SetDevicePower() 를 이용한 Device 의 PowerStatus 변화는 단순히 Prefix 를 인자로 넘기는 경우가 많았다.
하지만 네트워크 드라이버의 경우는 아래와 같은 방법으로 NDIS 에 물린 네트워크드라이버의 PowerStatus 가 원하는 데로 변화함을 확인했음.ㅋㅋ
DWORD SetWLANPowerState(BOOL enable) { WCHAR szNDISAdapterName[257]; int n; memset( szNDISAdapterName, 0x00, sizeof(szNDISAdapterName) ); n = _sntprintf(szNDISAdapterName, MAX_PATH-1, _T("%s\\%s"), PMCLASS_NDIS_MINIPORT, _T("WLAN_NAME")); // 이때 _T("WLAN_NAME") 에는 실제 디바이스 이름을 적는다. if( enable ) { if(ERROR_SUCCESS != SetDevicePower(szNDISAdapterName, POWER_NAME, PwrDeviceUnspecified)) return FALSE; else ; // 성공.. } else { if(ERROR_SUCCESS != SetDevicePower(szNDISAdapterName, POWER_NAME, D4)) return FALSE; else ; // 성공.. } return TRUE; }
오류나 틀린점은 리플로 달아주세요..
반응형