Funzione DrvResetPDEV (winddi.h)
La funzione DrvResetPDEV consente a un driver grafico di trasferire lo stato del driver da una struttura PDEV precedente a una nuova struttura PDEV quando un'applicazione Win32 chiama ResetDC.
Sintassi
BOOL DrvResetPDEV(
DHPDEV dhpdevOld,
DHPDEV dhpdevNew
);
Parametri
dhpdevOld
Handle fornito dal chiamante alla struttura PDEV del dispositivo originale. Questo handle è stato fornito in precedenza dal driver come valore restituito per DrvEnablePDEV.
dhpdevNew
Handle fornito dal chiamante alla nuova struttura PDEV.
Valore restituito
Questo valore restituito è TRUE se la funzione ha esito positivo. In caso contrario, è FALSE e viene registrato un codice di errore.
Commenti
La funzione DrvResetPDEV di un driver grafico deve essere usata per modificare il contenuto di una nuova struttura PDEV, in base al contenuto della struttura PDEV precedente (attualmente in uso).
I driver di visualizzazione OpenGL che devono conoscere le modifiche alla modalità devono implementare DrvResetPDEV. In caso contrario, tutti gli altri driver di visualizzazione in genere non devono implementare questa funzione.
Nota Le informazioni seguenti riguardano le DLL grafiche della stampante.
La funzione viene chiamata come risultato della chiamata di un'applicazione alla funzione ResetDC Win32, che a sua volta fa sì che GDI chiami drvEnablePDEV del driver per ottenere una nuova struttura PDEV. Poiché il driver può modificare il contenuto di una struttura PDEV durante il rendering di un processo di stampa, la funzione DrvResetPDEV consente al driver di trasferire queste modifiche dalla struttura PDEV precedente a quella nuova.Esempi dei tipi di informazioni che una DLL grafica della stampante potrebbe voler aggiungere alla nuova struttura PDEV sono puntatori ai file di carattere memorizzati nella cache o flag che indicano se l'inizializzazione della pagina deve (o non deve) essere eseguita alla successiva chiamata a DrvStartDoc o DrvStartPage .
Se ResetDC viene chiamato durante il rendering di un documento di stampa, la DLL grafica della stampante riceve la sequenza di chiamate seguente:
dhpdevNew = DrvEnablePDEV();
DrvResetPDEV(dhpdevOld, dhpdevNew);
DrvDisableSurface(dhpdevOld);
DrvDisablePDEV(dhpdevOld);
DrvEnableSurface(dhpdevNew);
DrvStartDoc(dhpdevNew);
Se ResetDC viene chiamato tra documenti non esiste una superficie associata al PDEV, quindi viene eseguita solo la sequenza di chiamate seguente:
dhpdevNew = DrvEnablePDEV();
DrvResetPDEV(dhpdevOld,dhpdevNew);
DrvDisablePDEV(dhpdevOld);
Requisiti
Piattaforma di destinazione | Desktop |
Intestazione | winddi.h (include Winddi.h) |