codice di controllo IOCTL_VIDEO_QUERY_SUPPORTED_BRIGHTNESS
Recupera i livelli di backlight supportati.
Per eseguire questa operazione, chiamare la funzione DeviceIoControl con i parametri seguenti.
BOOL DeviceIoControl(
(HANDLE) hDevice, // handle to device
IOCTL_VIDEO_QUERY_SUPPORTED_BRIGHTNESS, // dwIoControlCode
NULL, // lpInBuffer
0, // nInBufferSize
(LPVOID) lpOutBuffer, // output buffer
(DWORD) nOutBufferSize, // size of output buffer
(LPDWORD) lpBytesReturned, // number of bytes returned
(LPOVERLAPPED) lpOverlapped // OVERLAPPED structure
);
Parametri
-
hDevice
-
Handle per il dispositivo \\.\LCD. Per recuperare un handle di dispositivo, chiamare la funzione CreateFile .
-
dwIoControlCode
-
Codice di controllo per l'operazione. Questo valore identifica l'operazione specifica da eseguire e il tipo di dispositivo in cui eseguirlo. Usare IOCTL_VIDEO_QUERY_SUPPORTED_BRIGHTNESS per questa operazione.
-
lpInBuffer
-
Non usato con questa operazione; impostare su NULL.
-
nInBufferSize
-
Non usato con questa operazione; impostato su zero.
-
lpOutBuffer
-
Puntatore a un buffer che riceve una matrice dei livelli di potenza disponibili. Questo buffer deve avere una lunghezza di 256 byte.
-
nOutBufferSize
-
Dimensioni in byte del buffer di output.
-
lpBytesReturned
-
Puntatore a una variabile che riceve le dimensioni, in byte, dei dati di output restituiti.
Se il buffer di output è troppo piccolo per restituire dati, la chiamata ha esito negativo, GetLastError restituisce il codice di errore ERROR_INSUFFICIENT_BUFFER e il numero di byte restituito è zero.
Se il buffer di output è troppo piccolo per contenere tutti i dati, ma può contenere alcune voci, il sistema operativo restituisce quanto più adatto, la chiamata ha esito negativo, GetLastError restituisce il codice di errore ERROR_MORE_DATA e lpBytesReturned indica la quantità di dati restituiti. L'applicazione deve chiamare di nuovo DeviceIoControl con la stessa operazione, specificando un nuovo punto di partenza.
Se lpOverlapped è NULL (I/O non sovrapposto), lpBytesReturned non può essere NULL.
Se lpOverlapped non è NULL (I/O sovrapposto), lpBytesReturned può essere NULL. Se si tratta di un'operazione sovrapposta, è possibile recuperare il numero di byte restituiti chiamando la funzione GetOverlappedResult . Se hDevice è associato a una porta di completamento di I/O, è possibile ottenere il numero di byte restituiti chiamando la funzione GetQueuedCompletionStatus .
-
lpOverlapped
-
Puntatore a una struttura OVERLAPPED .
Se hDevice è stato aperto con il flag FILE_FLAG_OVERLAPPED, lpOverlapped deve puntare a una struttura OVERLAPPED valida. In questo caso, l'operazione viene eseguita come operazione sovrapposta (asincrona). Se il dispositivo è stato aperto con il flag FILE_FLAG_OVERLAPPED e lpOverlapped è NULL, la funzione ha esito negativo in modi imprevedibili.
Se hDevice è stato aperto senza specificare il flag FILE_FLAG_OVERLAPPED, lpOverlapped viene ignorato e DeviceIoControl non restituisce fino al completamento dell'operazione o fino a quando non si verifica un errore.
Valore restituito
Se l'operazione viene completata correttamente, DeviceIoControl restituisce un valore diverso da zero.
Se l'operazione ha esito negativo o è in sospeso, DeviceIoControl restituisce zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.
Osservazioni
Ogni elemento nella matrice lpOutBuffer è di un byte di lunghezza. Pertanto, al momento della restituzione, il parametro lpBytesReturned indica il numero di livelli supportati. Ogni livello è un valore compreso tra 0 e 100. Maggiore è il valore, più luminoso è la luce posteriore. Tutti i livelli sono supportati se la fonte di alimentazione è AC o DC.
Il file di intestazione usato per compilare applicazioni che includono questa funzionalità, Ntdvertitaeo.h, è incluso in Microsoft Windows Driver Development Kit (DDK). Per informazioni su come ottenere la DDK, vedere https://www.microsoft.com/whdc/devtools/ddk/default.mspx.
In alternativa, è possibile definire questo codice di controllo come indicato di seguito:
#define IOCTL_VIDEO_QUERY_SUPPORTED_BRIGHTNESS \
CTL_CODE(FILE_DEVICE_VIDEO, 0x125, METHOD_BUFFERED, FILE_ANY_ACCESS)
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows Vista, Windows XP con SP1 [solo app desktop] |
Server minimo supportato |
Windows Server 2003 [solo app desktop] |
Intestazione |
|