重要
Windows でプリンターとの通信手段として推奨されるのは、最新の印刷プラットフォームです。 プリンターデバイス開発におけるWindows 10および11での印刷体験をカスタマイズするために、MicrosoftのIPPインボックスクラスドライバーとPrint Support Apps (PSA)の使用を推奨します。
詳細については、「 印刷サポート アプリ v1 および v2 の設計ガイド」を参照してください。
プリンター グラフィックス DLL をビルドするときは、ユーザーモードの実行を目的とした DLL とカーネルモードの実行を目的とした DLL の次の違いに注意する必要があります。
Windows Vista のプリンター グラフィックス DLL は、ユーザー モードでのみ実行できます。 詳細については、「ユーザー モードまたはカーネル モードの選択」を参照してください。
プリンター グラフィックス DLL をビルドするための規則
| ユーザーモードのグラフィックス DLL | カーネルモードのグラフィックス DLL |
|---|---|
| TARGETTYPE=DYNLINK をソース ファイルに設定します。 | TARGETTYPE=GDI_DRIVER をソースファイルに設定します。 |
| プリプロセッサ マクロ USERMODE_DRIVER は、winddi.h を追加する前にソース ファイルで定義する必要があります。 | プリプロセッサ マクロ USERMODE_DRIVER は定義できません。 |
| オブジェクト モジュールは、umpdddi.lib および gdi32.lib インポート ライブラリにリンクされている必要があります。 | オブジェクト モジュールは、win32k.lib インポート ライブラリにリンクされている必要があります。 |
| DrvQueryDriverInfo 関数は、DRVQUERY_USERMODE の場合は TRUE を返す必要があります。 | DrvQueryDriverInfo 関数は、DRVQUERY_USERMODE の場合は FALSE を返す必要があります。 (関数を省略することもできます)。 |