Condividi tramite


DXGKCB_ACQUIRE_POST_DISPLAY_OWNERSHIP funzione di callback (dispmprt.h)

Chiamato da un driver miniport di visualizzazione Windows Display Driver Model (WDDM) 1.2 o versione successiva per ottenere le informazioni di visualizzazione dal dispositivo di visualizzazione auto-test (POST) corrente o dal driver WDDM in esecuzione in precedenza.

Il driver deve usare queste informazioni di visualizzazione per ottimizzare la richiesta di modifica della modalità iniziale dopo l'avvio del dispositivo di visualizzazione.

Sintassi

DXGKCB_ACQUIRE_POST_DISPLAY_OWNERSHIP DxgkcbAcquirePostDisplayOwnership;

NTSTATUS DxgkcbAcquirePostDisplayOwnership(
  [in]  HANDLE DeviceHandle,
  [out] PDXGK_DISPLAY_INFORMATION DisplayInfo
)
{...}

Parametri

[in] DeviceHandle

Handle che rappresenta una scheda di visualizzazione. Il driver miniport di visualizzazione ottenuto in precedenza questo handle nel membro DeviceHandle della struttura DXGKRNL_INTERFACE passata a DxgkDdiStartDevice.

[out] DisplayInfo

Puntatore a una struttura DXGK_DISPLAY_INFORMATION allocata dal driver miniport di visualizzazione. Se DxgkCbAcquirePostDisplayOwnership restituisce STATUS_SUCCESS, questa struttura contiene informazioni di visualizzazione per il dispositivo di visualizzazione corrente utilizzato per le operazioni POST.

Valore restituito

DxgkCbAcquirePostDisplayOwnership restituisce STATUS_SUCCESS se ha esito positivo. In caso contrario, restituisce uno dei codici di errore definiti in Ntstatus.h.

Commenti

Formati di colore consentiti

Il membro DisplayInfo->ColorFormat deve includere una combinazione OR bit per bit dei due formati seguenti:
  • D3DDDIFMT_X8R8G8B8
  • D3DDDIFMT_A8R8G8B8
Se il sistema operativo restituisce il formato di D3DDDIFMT_R8G8B8 , il driver miniport di visualizzazione deve ignorarlo.

Video presenta l'inizializzazione di destinazione

È possibile che il membro TargetId DisplayInfo-> non sia inizializzato. In questo caso, l'identificatore della destinazione del video presente è D3DDDI_ID_UNINITIALIZED. In genere, questo si verifica dopo un avvio del sistema.

Analogamente, è possibile che il membro DisplayInfo-AcpiId> non sia inizializzato. In questo caso, l'identificatore ACPI AcpiId ha un valore pari a zero.

Nel caso di un aggiornamento da driver a driver, il driver precedente avrà fornito l'identificatore di destinazione e l'identificatore ACPI.

Linee guida per l'implementazione

A partire da WDDM 1.2, il driver miniport display deve seguire queste linee guida quando chiama DxgkCbAcquirePostDisplayOwnership:
  • Il punto di ingresso per la funzione DxgkCbAcquirePostDisplayOwnership fa parte della struttura DXGKRNL_INTERFACE . Questa struttura viene restituita al driver tramite il parametro DxgkInterface quando viene chiamata la funzione DxgkDdiStartDevice del driver.
  • È facoltativo per il driver miniport di visualizzazione chiamare DxgkCbAcquirePostDisplayOwnership. Tuttavia, il sistema operativo potrebbe comunque chiamare la funzione DxgkDdiStopDeviceAndReleasePostDisplayOwnership del driver di dispositivo se il driver non ha precedentemente chiamato DxgkCbAcquirePostDisplayOwnership.
  • Il driver miniport di visualizzazione può chiamare DxgkCbAcquirePostDisplayOwnership se il dispositivo viene avviato in risposta a un evento Plug and Play (PnP). In questo caso, il driver deve chiamare DxgkCbAcquirePostDisplayOwnership dal contesto della chiamata alla funzione DxgkDdiStartDevice .
  • Il driver miniport di visualizzazione può chiamare DxgkCbAcquirePostDisplayOwnership se il dispositivo riprende uno stato di alimentazione di PowerDeviceD0 dopo uno stato di ibernazione. In questo caso, il driver deve chiamare DxgkCbAcquirePostDisplayOwnership dall'interno del contesto della chiamata alla funzione DxgkDdiSetPowerState .
  • Il driver miniport di visualizzazione deve chiamare solo la funzione DxgkCbAcquirePostDisplayOwnership se il driver è in esecuzione in Windows 8 o una versione successiva del sistema operativo Windows.
    Nota Il driver miniport di visualizzazione può chiamare RtlGetVersion per determinare la versione del sistema operativo.
     
  • DxgkCbAcquirePostDisplayOwnership può restituire una struttura DXGK_DISPLAY_INFORMATION con il membro Width impostato su zero. Ciò indica che il dispositivo di visualizzazione corrente non è in grado di eseguire operazioni POST o che il sistema operativo non dispone delle informazioni di visualizzazione correnti per il dispositivo POST corrente.

Requisiti

Requisito Valore
Client minimo supportato Windows 8
Server minimo supportato Windows Server 2012
Piattaforma di destinazione Desktop
Intestazione dispmprt.h (include Dispmprt.h)
IRQL <= APC_LEVEL

Vedi anche

DXGKRNL_INTERFACE

DXGK_DISPLAY_INFORMATION

DxgkDdiSetPowerState

DxgkDdiStartDevice

DxgkDdiStopDeviceAndReleasePostDisplayOwnership

RtlGetVersion