ホーム › Devices.Display › PFN_DrvResetPDEV
PFN_DrvResetPDEV
コールバックシグネチャ
BOOL PFN_DrvResetPDEV(
DHPDEV dhpdevOld,
DHPDEV dhpdevNew
);パラメーター
| フィールド | 型 | 説明 |
|---|---|---|
| dhpdevOld | DHPDEV | 呼び出し元が指定する、元のデバイスの PDEV 構造体へのハンドルです。このハンドルは、以前にドライバーが DrvEnablePDEV の戻り値として返したものです。 |
| dhpdevNew | DHPDEV | 呼び出し元が指定する、新しい PDEV 構造体へのハンドルです。 |
公式ドキュメント
DrvResetPDEV 関数は、Win32 アプリケーションが ResetDC を呼び出したときに、グラフィックスドライバーが古い PDEV 構造体から新しい PDEV 構造体へドライバーの状態を引き継げるようにします。
戻り値
関数が成功した場合、この戻り値は TRUE です。それ以外の場合は FALSE となり、エラーコードがログに記録されます。
解説(Remarks)
グラフィックスドライバーの DrvResetPDEV 関数は、古い(現在使用中の)PDEV 構造体の内容に基づいて、新しい PDEV 構造体の内容を変更するために使用します。
モードの変更を知る必要がある OpenGL ディスプレイドライバーは、DrvResetPDEV を実装してください。それ以外のディスプレイドライバーでは、通常この関数を実装する必要はありません。
注意 以下の情報はプリンターグラフィックス DLL に関するものです。
この関数は、アプリケーションが Win32 の ResetDC 関数を呼び出した結果として呼び出されます。ResetDC の呼び出しにより、GDI はドライバーの DrvEnablePDEV を呼び出して新しい PDEV 構造体を取得します。ドライバーは印刷ジョブの描画中に PDEV 構造体の内容を変更できるため、DrvResetPDEV 関数を使うことで、これらの変更内容を古い PDEV 構造体から新しい PDEV 構造体へ引き継ぐことができます。プリンターグラフィックス DLL が新しい PDEV 構造体に追加したい情報の例としては、キャッシュされたフォントファイルへのポインターや、次に DrvStartDoc または DrvStartPage が呼び出されたときにページの初期化を行うかどうかを示すフラグなどがあります。
印刷ドキュメントの描画中に ResetDC が呼び出された場合、プリンターグラフィックス DLL は次の順序で呼び出しを受け取ります。
dhpdevNew = DrvEnablePDEV();
DrvResetPDEV(dhpdevOld, dhpdevNew);
DrvDisableSurface(dhpdevOld);
DrvDisablePDEV(dhpdevOld);
DrvEnableSurface(dhpdevNew);
DrvStartDoc(dhpdevNew);
ドキュメントとドキュメントの間で ResetDC が呼び出された場合は、PDEV に関連付けられたサーフェスが存在しないため、次の順序の呼び出しのみが行われます。
dhpdevNew = DrvEnablePDEV();
DrvResetPDEV(dhpdevOld,dhpdevNew);
DrvDisablePDEV(dhpdevOld);
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)