I'm trying to create a simple Monitor Brightness adjustion. SetMonitorBrightness() doesn't work on the desired monitor somehow (ERROR_GRAPHICS_I2C_ERROR_TRANSMITTING_DATA
) so I'm trying IOCTL_VIDEO_SET_DISPLAY_BRIGHTNESS.
To get the handle, I used CreateFile:
HANDLE hDisplay = ::CreateFile(_T("\\.\LCD"),
GENERIC_READ | GENERIC_WRITE,
FILE_SHARE_READ | FILE_SHARE_WRITE,
NULL,
CREATE_NEW,
FILE_FLAG_BACKUP_SEMANTICS, NULL);
Now when I try to acces the handle in DeviceIoControl()
DWORD ret = NULL;
OVERLAPPED olp;
if (!DeviceIoControl(hDisplay, IOCTL_VIDEO_SET_DISPLAY_BRIGHTNESS, &brgt, sizeof(brgt), NULL, 0, &ret, &olp))
{
//ErrorMessageblabla
}
I get Error 6: Invalid Handle
What am I doing wrong?