Попытка открыть дескриптор устройства отображения для изменения яркости в Windows XP с помощью C ++

Я пытаюсь написать код C ++ / WinAPI для изменения яркости монитора. Код должен быть совместим с Windows XP, поэтому я не могу использовать такие API, как SetMonitorBrightness. Вот я и подумал попробоватьIOCTL_VIDEO_SET_DISPLAY_BRIGHTNESS но я, кажется, даже не могу получить дескриптор устройства.

HANDLE hDevice = ::CreateFile(_T("\\\\.\\LCD"),
    GENERIC_READ | GENERIC_WRITE,
    FILE_SHARE_READ | FILE_SHARE_WRITE,
    NULL,
    OPEN_EXISTING,
    0, NULL);
if(hDevice != INVALID_HANDLE_VALUE)
{
    //Do work here

    ::CloseHandle(hDevice);
}
else
{
    nOSErr = ::GetLastError();
    //Get code 2
}

Я пробовал различные комбинации флагов GENERIC_READ, GENERIC_WRITE и FILE_SHARE_READ, FILE_SHARE_WRITE, но я всегда получаю код ошибки 2 при вызове CreateFile.

Так что я тут делаю не так?

Ответы на вопрос(1)

Ваш ответ на вопрос