Я пытаюсь создать простую настройку яркости монитора. SetMonitorBrightness () как-то не работает на нужном мониторе (ERROR_GRAPHICS_I2C_ERROR_TRANSMITTING_DATA
) так что я пытаюсь IOCTL_VIDEO_SET_DISPLAY_BRIGHTNESS.
Чтобы получить дескриптор, я использовал CreateFile:
HANDLE hDisplay = ::CreateFile(_T("\\.\LCD"),
GENERIC_READ | GENERIC_WRITE,
FILE_SHARE_READ | FILE_SHARE_WRITE,
NULL,
CREATE_NEW,
FILE_FLAG_BACKUP_SEMANTICS, NULL);
Теперь, когда я пытаюсь получить доступ к дескриптору в DeviceIoControl ()
DWORD ret = NULL;
OVERLAPPED olp;
if (!DeviceIoControl(hDisplay, IOCTL_VIDEO_SET_DISPLAY_BRIGHTNESS, &brgt, sizeof(brgt), NULL, 0, &ret, &olp))
{
//ErrorMessageblabla
}
я получил Error 6: Invalid Handle
Что я делаю неправильно?
Задача ещё не решена.
Других решений пока нет …