노트북/슬레이트 모드 상태 간 전환
이 항목에는 랩톱/슬레이트 모드 표시기 상태를 전환하는 샘플 코드가 포함되어 있습니다.
int __cdecl ToggleConversionIndicator(
__in int argc,
__in_ecount(argc) char **argv)
{
LPWSTR DevicePath;
HANDLE FileHandle;
BOOL b;
BYTE buffer;
HWND hwnd;
MSG msg;
//assuming our GetDevicePath method is creating a device path using use SetupDi API
DevicePath = GetDevicePath((LPGUID)&GUID_GPIOBUTTONS_LAPTOPSLATE_INTERFACE);
FileHandle = CreateFile(DevicePath,
GENERIC_WRITE,
0,
NULL,
OPEN_EXISTING,
0,
NULL);
buffer = 0;
WriteFile(FileHandle, &buffer, sizeof(buffer), NULL, NULL);
return 0;
}
참고: 노트북/슬레이트 모드 표시기 디바이스는 한 번에 하나의 프로세스로만 열 수 있습니다. CreateFile이 실패하고 다른 프로세스에서 디바이스를 이미 열면 GetLastError가 ERROR_ACCESS_DENIED 반환합니다.