Tentando abrir o identificador de dispositivo de exibição para alterar o brilho no Windows XP usando C ++
Eu estou tentando escrever um código C ++ / WinAPI para alterar o brilho de um monitor. O código deve ser compatível com o Windows XP, portanto não posso usar APIs como o SetMonitorBrightness. Então eu pensei em experimentarIOCTL_VIDEO_SET_DISPLAY_BRIGHTNESS mas eu não consigo nem pegar um dispositivo.
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
}
Eu tentei várias combinações de GENERIC_READ, GENERIC_WRITE e FILE_SHARE_READ, FILE_SHARE_WRITE sinalizadores mas sempre obter código de erro 2 quando CreateFile é chamado.
Então, o que estou fazendo de errado aqui?