IOCTL_VIDEO_QUERY_SUPPORTED_BRIGHTNESS Steuerungscode

Ruft die unterstützten Hintergrundbeleuchtungsstufen ab.

Um diesen Vorgang auszuführen, rufen Sie die DeviceIoControl-Funktion mit den folgenden Parametern auf.

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
);

Parameter

hGeräte

Ein Handle für das \\.\LCD-Gerät. Um ein Gerätehandle abzurufen, rufen Sie die Funktion CreateFile auf.

dwIoControlCode

Der Steuerelementcode für den Vorgang. Dieser Wert gibt den spezifischen Vorgang an, der ausgeführt werden soll, und den Typ des Geräts, auf dem er ausgeführt werden soll. Verwenden Sie für diesen Vorgang IOCTL_VIDEO_QUERY_SUPPORTED_BRIGHTNESS .

lpInBuffer

Nicht für diesen Vorgang verwendet; auf NULL festgelegt.

nInBufferSize

Nicht für diesen Vorgang verwendet; auf 0 festgelegt.

lpOutBuffer

Ein Zeiger auf einen Puffer, der ein Array der verfügbaren Leistungsstufen empfängt. Dieser Puffer sollte 256 Bytes lang sein.

nOutBufferSize

Die Größe des Ausgabepuffers in Bytes.

lpBytesReturned

Ein Zeiger auf eine Variable, die die Größe der zurückgegebenen Ausgabedaten in Bytes empfängt.

Wenn der Ausgabepuffer zu klein ist, um Daten zurückzugeben, schlägt der Aufruf fehl, GetLastError gibt den Fehlercode ERROR_INSUFFICIENT_BUFFER zurück, und die zurückgegebene Byteanzahl ist 0.

Wenn der Ausgabepuffer zu klein ist, um alle Daten aufzunehmen, aber einige Einträge enthalten kann, gibt das Betriebssystem so viel wie möglich zurück, der Aufruf schlägt fehl, GetLastError gibt den Fehlercode ERROR_MORE_DATA zurück, und lpBytesReturned gibt die menge der zurückgegebenen Daten an. Ihre Anwendung sollte DeviceIoControl erneut mit demselben Vorgang aufrufen und einen neuen Startpunkt angeben.

Wenn lpOverlappedNULL (nicht überlappende E/A) ist, kann lpBytesReturned nicht NULL sein.

Wenn lpOverlapped nicht NULL (überlappende E/A) ist, kann lpBytesReturnedNULL sein. Wenn es sich um einen überlappenden Vorgang handelt, können Sie die Anzahl der zurückgegebenen Bytes abrufen, indem Sie die GetOverlappedResult-Funktion aufrufen. Wenn hDevice einem E/A-Vervollständigungsport zugeordnet ist, können Sie die Anzahl der zurückgegebenen Bytes abrufen, indem Sie die GetQueuedCompletionStatus-Funktion aufrufen.

lpOverlapped

Ein Zeiger auf eine ÜBERLAPPENDE Struktur.

Wenn hDevice mit dem flag FILE_FLAG_OVERLAPPED geöffnet wurde, muss lpOverlapped auf eine gültige OVERLAPPED-Struktur verweisen. In diesem Fall wird der Vorgang als überlappender (asynchroner) Vorgang ausgeführt. Wenn das Gerät mit dem FILE_FLAG_OVERLAPPED-Flag geöffnet wurde und lpOverlappedNULL ist, schlägt die Funktion auf unvorhersehbare Weise fehl.

Wenn hDevice geöffnet wurde, ohne das flag FILE_FLAG_OVERLAPPED anzugeben, wird lpOverlapped ignoriert, und DeviceIoControl wird erst zurückgegeben, wenn der Vorgang abgeschlossen wurde oder bis ein Fehler auftritt.

Rückgabewert

Wenn der Vorgang erfolgreich abgeschlossen wurde, gibt DeviceIoControl einen wert ohne Zero zurück.

Wenn der Vorgang fehlschlägt oder aussteht, gibt DeviceIoControl null zurück. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Bemerkungen

Jedes Element im lpOutBuffer-Array ist ein Byte lang. Daher gibt der lpBytesReturned-Parameter bei der Rückgabe die Anzahl der unterstützten Ebenen an. Jede Ebene ist ein Wert von 0 bis 100. Je größer der Wert, desto heller ist die Hintergrundbeleuchtung. Alle Ebenen werden unterstützt, unabhängig davon, ob die Stromquelle AC oder DC ist.

Die Headerdatei zum Erstellen von Anwendungen, die diese Funktionalität enthalten, Ntddvdeo.h, ist im Microsoft Windows Driver Development Kit (DDK) enthalten. Informationen zum Abrufen des DDK finden Sie unter https://www.microsoft.com/whdc/devtools/ddk/default.mspx.

Alternativ können Sie diesen Steuerelementcode wie folgt definieren:

#define IOCTL_VIDEO_QUERY_SUPPORTED_BRIGHTNESS \
  CTL_CODE(FILE_DEVICE_VIDEO, 0x125, METHOD_BUFFERED, FILE_ANY_ACCESS)

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows Vista, Windows XP mit SP1 [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows Server 2003 [nur Desktop-Apps]
Header
Ntddvdeo.h

Siehe auch

Backlight-Steuerungsschnittstelle

Deviceiocontrol