drvResetPDEV 函式 (winddi.h)

DrvResetPDEV函式可讓圖形驅動程式在 Win32 應用程式呼叫ResetDC時,將驅動程式的狀態從舊的PDEV結構傳輸到新的 PDEV 結構。

語法

BOOL DrvResetPDEV(
  DHPDEV dhpdevOld,
  DHPDEV dhpdevNew
);

參數

dhpdevOld

呼叫端提供給原始裝置 PDEV 結構的控制碼。 此控制碼先前由驅動程式提供為 DrvEnablePDEV的傳回值。

dhpdevNew

呼叫端提供給新 PDEV 結構的控制碼。

傳回值

如果函式成功,則此傳回值為 TRUE 。 否則為 FALSE,並記錄錯誤碼。

備註

圖形驅動程式的 DrvResetPDEV 函式應該根據目前) 使用中的舊 (內容,來修改新 PDEV 結構的內容。

需要知道模式變更的 OpenGL 顯示驅動程式應該實作 DrvResetPDEV。 否則,所有其他顯示驅動程式通常不需要實作此函式。

注意 下列資訊與印表機圖形 DLL 有關。

呼叫函式是應用程式呼叫 Win32 ResetDC 函式的結果,進而讓 GDI 呼叫驅動程式的 DrvEnablePDEV 以取得新的 PDEV 結構。 因為驅動程式可以在轉譯列印工作期間修改 PDEV 結構的內容, 所以 DrvResetPDEV 函式可讓驅動程式將這些修改從舊的 PDEV 結構傳輸到新的修改。

印表機圖形 DLL 可能想要新增至新 PDEV 結構的資訊類型範例是快取字型檔案的指標,或是旗標,指出下次呼叫 DrvStartDocDrvStartPage 時,是否應該 (或不應該) 。

如果在轉譯列印檔案時呼叫 ResetDC ,印表機圖形 DLL 會收到下列呼叫序列:

    dhpdevNew = DrvEnablePDEV();
    DrvResetPDEV(dhpdevOld, dhpdevNew);
    DrvDisableSurface(dhpdevOld);
    DrvDisablePDEV(dhpdevOld);
    DrvEnableSurface(dhpdevNew);
    DrvStartDoc(dhpdevNew);

如果在檔之間呼叫 ResetDC ,則沒有與 PDEV 相關聯的介面,因此只會進行下列呼叫序列:

    dhpdevNew = DrvEnablePDEV();
    DrvResetPDEV(dhpdevOld,dhpdevNew);
    DrvDisablePDEV(dhpdevOld);

規格需求

   
目標平台 桌上型
標頭 winddi.h (包含 Winddi.h)

另請參閱

DrvDisablePDEV

DrvDisableSurface

DrvEnablePDEV

DrvEnableSurface

DrvStartDoc

DrvStartPage