次の方法で共有


ノート PC/スレート モードの状態の切り替え

このトピックでは、ノート PC/スレート モード インジケーターの状態を切り替えるサンプル コードについて説明します。

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;
}

注: ノート PC/スレート モード インジケーター デバイスは、一度に 1 つのプロセスのみによって開くことができます。 デバイスが別のプロセスによって既に開かれている場合、CreateFile は失敗し、GetLastError は ERROR_ACCESS_DENIED を返します。