我正在尝试创建一个简单的显示器亮度调整。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
我究竟做错了什么?