ローカル印刷プロバイダー
警告: Windows 10 以降では、サード パーティの印刷プロバイダーをサポートする API は非推奨となります。 Microsoft は、サード パーティの印刷プロバイダーへの投資を推奨していません。 さらに、v4 印刷ドライバー モデルを使用できる Windows 8 以降の製品では、サード パーティの印刷プロバイダーが v4 印刷ドライバーを使用するキューを作成または管理できない場合があります。
Microsoft Windows 2000 以降のローカル印刷プロバイダーは、ローカル印刷プロバイダーのポート モニターを介してアクセスされるすべてのプリンターのジョブ制御とプリンター管理機能を提供します。 (クライアント管理者 は、[プリンターの 追加] ウィザードを使用する場合のローカル プリンター オプション。このようなプリンターには、ローカル システムのシリアル ポートと並列ポートに接続されているものが含まれます。 また、SCSI ポートなどの他の I/O チャネルに接続されているデバイスと、リモートの NT ベース以外のオペレーティング システム サーバーに接続されているプリンターを含めることもできます。
ローカル印刷プロバイダーは、印刷プロバイダーによって定義された関数のセット全体を実装します。 また、次の機能も提供します。
ローカルでアクセス可能な印刷キューに転送されるジョブのスプーラーを使用した印刷ジョブ スプーラー。
ローカル プリンター インターフェイス DLL の呼び出しを使用した Windows 2000 以降の オペレーティング システム バージョンのプリンター ドライバー アーキテクチャ のサポート。
ベンダーが提供する印刷プロセッサのサポート (印刷プロセッサの作成を参照)。
ベンダーが提供する印刷モニターのサポート (印刷モニターの作成を参照)。
次の図は、アプリケーションが印刷ジョブを作成するときの、ローカル プリンター プロバイダーのコンポーネント間の制御フローの (やや簡略化された) ビューを示しています。
図に示すように、アプリケーションはグラフィックス ドライバー インターフェイス (GDI) を呼び出して印刷ジョブを作成します。 印刷ジョブの初期出力形式が EMF であるかどうかに関係なく、ローカル印刷プロバイダーのジョブ作成 API はスプール ファイルを作成します。 後でジョブがスケジュールされると、スプール ファイルが読み取られ、形式が拡張メタファイル (EMF) の場合、EMF 印刷プロセッサはプリンター グラフィックス DLL を使用して、RAW 形式に変換するためにジョブを GDI に送り返します。 変換されたデータ ストリームは、(再プールされずに) ローカル印刷プロバイダーを介してプリンターに送り返すことができます。
ベンダーは、ローカル印刷プロバイダーと連携してカスタム ネットワーク構成をサポートする部分印刷プロバイダーを作成できます。