Condividi tramite


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
Ntdvertitaeo.h

Vedi anche

Interfaccia di controllo Backlight

Deviceiocontrol