印刷スプーラー API 関数

印刷スプーラー API には、アプリケーションが Windows 印刷スプーラーと、制御するプリンターと印刷ジョブを管理するために使用する関数とデータ構造が含まれています。

印刷スプーラー API の機能は、次のグループに分かれています。

これらの関数は、印刷ジョブをプリンターに送信し、印刷スプーラー内の印刷ジョブを追跡および制御します。

機能 説明
AddJob
AddJob 関数は、印刷スプーラーによってスケジュールできる印刷ジョブの一覧に印刷ジョブを追加します。 関数は、ジョブの格納に使用できるファイルの名前を取得します。
ClosePrinter
ClosePrinter 関数は、指定したプリンター オブジェクトを閉じます。
DocumentEvent
DocumentEvent 関数は、ドキュメントの印刷に関連するイベントのイベント ハンドラーです。
DocumentProperties
DocumentProperties 関数は、プリンターの初期化情報を取得または変更するか、指定したプリンターのプリンター構成プロパティ シートを表示します。
EndDocPrinter
EndDocPrinter 関数は、指定したプリンターの印刷ジョブを終了します。
EndPagePrinter
EndPagePrinter 関数は、アプリケーションが印刷ジョブのページの末尾にあることを印刷スプーラーに通知します。
EnumJobs
EnumJobs 関数は、指定したプリンターの印刷ジョブの指定されたセットに関する情報を取得します。
GetJob
GetJob 関数は、指定された印刷ジョブに関する情報を取得します。
OpenPrinter
OpenPrinter 関数は、指定されたプリンターまたはプリント サーバー、または印刷サブシステム内の他の種類のハンドルへのハンドルを取得します。
OpenPrinter2
プリンター オプションの一部を設定しながら、指定したプリンター、プリント サーバー、またはその他の種類の印刷サブシステム内のハンドルへのハンドルを取得します。
ReportJobProcessingProgress
XPS 印刷ジョブがスプーリングフェーズかレンダリングフェーズか、および処理の現在進行中の部分を印刷スプーラー サービスに報告します。
ScheduleJob
ScheduleJob 関数は、印刷スプーラーが印刷のために指定された印刷ジョブをスケジュールするように要求します。
SetJob
SetJob 関数は、指定されたプリンターで印刷ジョブを一時停止、再開、取り消し、または再起動します。 また、SetJob 関数を使用して、印刷ジョブの優先順位やドキュメント名などの印刷ジョブ パラメーターを設定することもできます。
StartDocPrinter
StartDocPrinter 関数は、文書を印刷用にスプールすることを印刷スプーラーに通知します。
StartPagePrinter
StartPagePrinter 関数は、指定したプリンターでページが印刷されようとしていることをスプーラーに通知します。

プリンター ユーザー インターフェイス関数

これらの関数は、ユーザーがプリンターを選択または構成できるようにするユーザー インターフェイスを表示します。

機能 説明
AdvancedDocumentProperties
AdvancedDocumentProperties 関数は、指定したプリンターのプリンター構成ダイアログ ボックスを表示し、ユーザーがそのプリンターを構成できるようにします。
ConfigurePort
ConfigurePort 関数は、指定されたサーバー上のポートのポート構成ダイアログ ボックスを表示します。
ConnectToPrinterDlg
ConnectToPrinterDlg 関数は、ユーザーがネットワーク上のプリンターを参照して接続できるようにするダイアログ ボックスを表示します。 ユーザーがプリンターを選択すると、関数はプリンターへの接続を作成しようとします。適切なドライバーがサーバーにインストールされていない場合、ユーザーにはローカルでプリンターを作成するオプションが与えられます。
PrinterProperties
PrinterProperties 関数は、指定されたプリンターの printer-properties プロパティ シートを表示します。

プリンター関数

これらの機能により、印刷スプーラーが使用するプリンターが追加および構成されます。

機能 説明
AbortPrinter
AbortPrinter 関数は、プリンターがスプーリング用に構成されている場合、プリンターのスプール ファイルを削除します。
AddPrinter
AddPrinter 関数は、指定したサーバーでサポートされているプリンターの一覧にプリンターを追加します。
AddPrinterConnection
AddPrinterConnection 関数は、現在のユーザーの指定したプリンターに接続を追加します。
AddPrinterConnection2
現在のユーザーの指定したプリンターに接続を追加し、接続の詳細を指定します。
DeletePrinter
DeletePrinter 関数は、指定したプリンター オブジェクトを削除します。
DeletePrinterConnection
DeletePrinterConnection 関数は、AddPrinterConnection または ConnectToPrinterDlg の呼び出しによって確立されたプリンターへの接続を削除します。
DeletePrinterData
DeletePrinterData 関数は、プリンターの指定された構成データを削除します。 プリンターの構成データは、名前付き値と型指定された値のセットで構成されます。 DeletePrinterData 関数は、値名で指定されたこれらの値のいずれかを削除します。
DeletePrinterDataEx
DeletePrinterDataEx 関数は、プリンターの構成データから指定した値を削除します。 プリンターの構成データは、レジストリ キーの階層に格納されている名前付き値と型指定された値のセットで構成されます。 関数は、指定したキーの下にある指定した値を削除します。
DeletePrinterKey
DeletePrinterKey 関数は、指定したプリンターの指定したキーとそのすべてのサブキーを削除します。
EnumPrinterData
EnumPrinterData 関数は、指定されたプリンターの構成データを列挙します。
EnumPrinterDataEx
EnumPrinterDataEx 関数は、指定されたプリンターとキーのすべての値の名前とデータを列挙します。
EnumPrinterKey
EnumPrinterKey 関数は、指定したプリンターの指定したキーのサブキーを列挙します。
EnumPrinters
EnumPrinters 関数は、使用可能なプリンター、プリント サーバー、ドメイン、または印刷プロバイダーを列挙します。
FlushPrinter
FlushPrinter 関数は、一時的な状態からバッファーをクリアするために、プリンターにバッファーを送信します。
GetDefaultPrinter
GetDefaultPrinter 関数は、ローカル コンピューター上の現在のユーザーの既定のプリンターのプリンター名を取得します。
GetPrinter
GetPrinter 関数は、指定されたプリンターに関する情報を取得します。
GetPrinterData
GetPrinterData 関数は、指定したプリンターまたはプリント サーバーの構成データを取得します。
GetPrinterDataEx
GetPrinterDataEx 関数は、指定されたプリンターまたはプリント サーバーの構成データを取得します。 GetPrinterDataEx、SetPrinterData 関数によって格納された値を取得できます。 さらに、 GetPrinterDataEx、SetPrinterDataEx 関数によって指定されたキーの下に格納されている値を取得できます。
IsValidDevmode
IsValidDevmode 関数は、DEVMODE 構造体の内容が有効であることを確認します。
ReadPrinter
ReadPrinter 関数は、指定したプリンターからデータを取得します。
ResetPrinter
ResetPrinter 関数は、StartDocPrinter 関数によって送信されたドキュメントの印刷に使用するデータ型とデバイス モードの値を指定します。 これらの値は、ドキュメント印刷の開始後に SetJob 関数を使用してオーバーライドできます。
SetDefaultPrinter
SetDefaultPrinter 関数は、ローカル コンピューター上の現在のユーザーの既定のプリンターのプリンター名を設定します。
SetPort
SetPort 関数は、プリンター ポートに関連付けられている状態を設定します。
SetPrinter
SetPrinter 関数は、指定したプリンターのデータを設定するか、印刷の一時停止、印刷の再開、またはすべての印刷ジョブのクリアによって、指定したプリンターの状態を設定します。
SetPrinterData
SetPrinterData 関数は、プリンターまたはプリント サーバーの構成データを設定します。
SetPrinterDataEx
SetPrinterDataEx 関数は、プリンターまたはプリント サーバーの構成データを設定します。 関数は、プリンターのレジストリ キーの下に構成データを格納します。
WritePrinter
WritePrinter 関数は、指定したプリンターにデータを書き込む必要があることを印刷スプーラーに通知します。

プリンター変更通知機能

これらの機能を使用すると、アプリケーションにプリンターの状態の変更を通知できます。

機能 説明
FindClosePrinterChangeNotification
FindClosePrinterChangeNotification 関数は、FindFirstPrinterChangeNotification 関数を呼び出して作成された変更通知オブジェクトを閉じます。 変更通知オブジェクトに関連付けられているプリンターまたはプリント サーバーは、そのオブジェクトによって監視されなくなります。
FindFirstPrinterChangeNotification
FindFirstPrinterChangeNotification 関数は、変更通知オブジェクトを作成し、オブジェクトへのハンドルを返します。 その後、このハンドルを待機関数の 1 つを呼び出して、プリンターまたはプリント サーバーへの変更を監視できます。
FindNextPrinterChangeNotification
FindNextPrinterChangeNotification 関数は、プリンターまたはプリント サーバーに関連付けられている変更通知オブジェクトの最新の変更通知に関する情報を取得します。 変更通知オブジェクトの待機操作が満たされた場合に、この関数を呼び出します。
FreePrinterNotifyInfo
FreePrinterNotifyInfo 関数は、FindNextPrinterChangeNotification 関数によって作成されたシステム割り当てバッファーを解放します。

プリンター フォーム関数

これらの関数は、プリンターで使用されるフォームを管理します。

機能 説明
AddForm
AddForm 関数は、指定したプリンターで選択できる使用可能なフォームの一覧にフォームを追加します。
DeleteForm
DeleteForm 関数は、サポートされているフォームの一覧からフォーム名を削除します。
EnumForms
EnumForms 関数は、指定したプリンターでサポートされているフォームを列挙します。
GetForm
GetForm 関数は、指定したフォームに関する情報を取得します。
SetForm
SetForm 関数は、指定したプリンターのフォーム情報を設定します。

これらの関数は、低レベルで印刷スプーラーと対話します。

機能 説明
CloseSpoolFileHandle
CloseSpoolFileHandle 関数は、アプリケーションによって現在送信されている印刷ジョブに関連付けられているスプール ファイルへのハンドルを閉じます。
CommitSpoolData
CommitSpoolData 関数は、指定された量のデータが指定されたスプール ファイルに書き込まれ、レンダリングの準備ができていることを印刷スプーラーに通知します。
GetPrintExecutionData
GetPrintExecutionData は、現在の印刷コンテキストを取得します。
GetSpoolFileHandle
GetSpoolFileHandle 関数は、アプリケーションによって現在送信されているジョブに関連付けられているスプール ファイルのハンドルを取得します。