Compartir a través de


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

Consulte también

Interfaz de control de retroiluminación

DeviceIoControl