IOCTL_VIDEO_QUERY_SUPPORTED_BRIGHTNESS código de control
Recupera los niveles de retroiluminación admitidos.
Para realizar esta operación, llame a la función DeviceIoControl con los parámetros siguientes.
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
);
Parámetros
-
hDevice
-
Identificador del dispositivo \\.\LCD. Para recuperar un identificador de dispositivo, llame a la función CreateFile .
-
dwIoControlCode
-
Código de control de la operación. Este valor identifica la operación específica que se va a realizar y el tipo de dispositivo en el que se va a realizar. Use IOCTL_VIDEO_QUERY_SUPPORTED_BRIGHTNESS para esta operación.
-
lpInBuffer
-
No se usa con esta operación; se establece en NULL.
-
nInBufferSize
-
No se usa con esta operación; se establece en cero.
-
lpOutBuffer
-
Puntero a un búfer que recibe una matriz de los niveles de energía disponibles. Este búfer debe tener 256 bytes de longitud.
-
nOutBufferSize
-
Tamaño del búfer de salida, en bytes.
-
lpBytesReturned
-
Puntero a una variable que recibe el tamaño, en bytes, de los datos de salida devueltos.
Si el búfer de salida es demasiado pequeño para devolver datos, se produce un error en la llamada, GetLastError devuelve el código de error ERROR_INSUFFICIENT_BUFFER y el recuento de bytes devuelto es cero.
Si el búfer de salida es demasiado pequeño para contener todos los datos, pero puede contener algunas entradas, el sistema operativo devuelve tanto como se ajuste, se produce un error en la llamada, GetLastError devuelve el código de error ERROR_MORE_DATA y lpBytesReturned indica la cantidad de datos devueltos. La aplicación debe llamar de nuevo a DeviceIoControl con la misma operación, especificando un nuevo punto de partida.
Si lpOverlapped es NULL (E/S no superpuesta), lpBytesReturned no puede ser NULL.
Si lpOverlapped no es NULL (E/S superpuesta), lpBytesReturned puede ser NULL. Si se trata de una operación superpuesta, puede recuperar el número de bytes devueltos llamando a la función GetOverlappedResult . Si hDevice está asociado a un puerto de finalización de E/S, puede obtener el número de bytes devueltos llamando a la función GetQueuedCompletionStatus .
-
lpOverlapped
-
Puntero a una estructura SUPERPUESTA .
Si hDevice se abrió con la marca FILE_FLAG_OVERLAPPED, lpOverlapped debe apuntar a una estructura SUPERPUESTA válida. En este caso, la operación se realiza como una operación superpuesta (asincrónica). Si el dispositivo se abrió con la marca de FILE_FLAG_OVERLAPPED y lpOverlapped es NULL, la función produce un error de maneras impredecibles.
Si hDevice se abrió sin especificar la marca de FILE_FLAG_OVERLAPPED, lpOverlapped se omite y DeviceIoControl no devuelve hasta que se haya completado la operación o hasta que se produzca un error.
Valor devuelto
Si la operación se completa correctamente, DeviceIoControl devuelve un valor distinto de cero.
Si se produce un error en la operación o está pendiente, DeviceIoControl devuelve cero. Para obtener información de error extendida, llame a GetLastError.
Comentarios
Cada elemento de la matriz lpOutBuffer es de un byte de longitud. Por lo tanto, tras la devolución, el parámetro lpBytesReturned indica el número de niveles admitidos. Cada nivel es un valor de 0 a 100. Cuanto mayor sea el valor, más brillante será la luz trasera. Se admiten todos los niveles si la fuente de alimentación es AC o DC.
El archivo de encabezado que se usa para compilar aplicaciones que incluyen esta funcionalidad, Ntddvdeo.h, se incluye en el Kit de desarrollo de controladores de Microsoft Windows (DDK). Para obtener información sobre cómo obtener el DDK, vea https://www.microsoft.com/whdc/devtools/ddk/default.mspx.
Como alternativa, puede definir este código de control de la siguiente manera:
#define IOCTL_VIDEO_QUERY_SUPPORTED_BRIGHTNESS \
CTL_CODE(FILE_DEVICE_VIDEO, 0x125, METHOD_BUFFERED, FILE_ANY_ACCESS)
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible |
Windows Vista, Windows XP con SP1 [solo aplicaciones de escritorio] |
Servidor mínimo compatible |
Windows Server 2003 [solo aplicaciones de escritorio] |
Encabezado |
|