印刷プロバイダーによって定義されている関数
警告
Windows 10 以降では、サード パーティの印刷プロバイダーをサポートする API は非推奨となります。 Microsoft は、サード パーティの印刷プロバイダーへの投資を推奨していません。 さらに、v4 印刷ドライバー モデルを使用できる Windows 8 以降の製品では、サード パーティの印刷プロバイダーが v4 印刷ドライバーを使用するキューを作成または管理できない場合があります。
このトピックでは、印刷プロバイダーが提供できるすべての関数の一覧を示します。 これらの関数のほとんどは、Microsoft Windows SDK のドキュメントで説明されています。 関数が Windows Driver Kit (WDK) で説明されている場合、関数名は、関連付けられている参照ページへのリンクを提供します。
すべての印刷プロバイダーは、リストされているすべての関数のポインターを指定する必要があります。 ただし、ベンダーが提供するほとんどの印刷プロバイダーは、関数によって定義された操作の多くをサポートする必要のない「部分プロバイダー」です。 そのため、関数ポインターの多くは NULL にすることができます。 部分印刷プロバイダーの詳細については、「ネットワーク印刷プロバイダーの作成」を参照してください。
次の関数の一覧では、サポートする必要がある関数に "必須" というラベルが付けられます。
すべての印刷プロバイダーは初期化関数 InitializePrintProvidor をエクスポートする必要があります。 他のすべての関数へのポインターは、PRINTPROVIDOR 構造体で指定する必要があります。 (これら 2 つの名前のスペルは間違っていますが、ヘッダー ファイル Winsplp.h に表示される名前と一致している点に注意してください)。
関数はグループに分けられ、次のセクションで説明します。
初期化関数
印刷キュー管理関数
プリンター ドライバー管理関数
印刷ジョブ作成関数
印刷ジョブのスケジューリング関数
帳票管理関数
印刷プロセッサ管理関数
印刷モニター管理関数
ポート管理関数
レジストリ管理関数
その他の関数
初期化関数
関数 | 説明 |
---|---|
InitializePrintProvidor (必須) | 印刷プロバイダーを初期化し、指定された関数へのポインターを返します。 |
印刷キュー管理関数
関数 | 説明 |
---|---|
AddPrinter | 印刷プロバイダーによって管理されている印刷キューの一覧に印刷キューを追加し、印刷プロセッサを印刷キューに関連付けます。 |
AddPrinterConnection | 指定した印刷キューへの接続を作成します。 |
ClosePrinter (必須) | 指定した印刷キューへの呼び出し元アクセスを無効にします。 |
DeletePrinter | 印刷プロバイダーによって管理されている印刷キューの一覧から印刷キューを削除します。 |
DeletePrinterConnection | 指定した印刷キューへの接続を削除します。 |
EnumPrinters (必須) | 現在印刷プロバイダーによって管理されている印刷キューの一覧を列挙します。 |
FindClosePrinterChangeNotification | FindFirstPrinterChangeNotification によって有効にされたプリンター変更通知を無効にします。 |
FindFirstPrinterChangeNotification | 指定したプリンター イベントを待機するために呼び出し元が使用できる待機オブジェクトへのハンドルを返します。 |
GetPrinter (必須) | 指定した印刷キューの現在のパラメーター値を返します。 |
OpenPrinter (必須) | 指定した印刷キューへの呼び出し元アクセスを有効にします。 |
RefreshPrinterChangeNotification | クライアントが PRINTER_NOTIFY_OPTIONS_REFRESH フラグを設定して FindNextPrinterChangeNotification を呼び出す場合にルーターによって呼び出されます。 |
ResetPrinter | 印刷キューのデータ型または DEVMODEW 構造体を変更します。 |
SetPrinter (必須) | 指定した印刷キューのパラメーターを設定します。 |
WaitForPrinterChange | 廃止されています。 |
プリンター ドライバー管理関数
関数 | 説明 |
---|---|
AddPrinterDriver | 指定したプリンターのドライバー ファイルを指定したサーバーに追加します。 |
AddPrinterDriverEx | AddPrinterDriver と同じで、パラメーターが追加されています。 |
DeletePrinterDriver | 指定したサーバー上の、指定したプリンターのドライバー ファイルへのアクセスを削除します。 |
DeletePrinterDriverEx | DeletePrinterDriver と同じで、パラメーターが追加されています。 |
EnumPrinterDrivers | AddPrinterDriver または AddPrinterDriverEx を呼び出して、指定したサーバーに追加されたプリンター ドライバーの一覧を返します。 |
GetPrinterDriver | 呼び出し元が AddPrinterDriver に渡すことができるプリンター ドライバーに関する情報を返します。 (通常、返される情報は INF ファイルから取得されます)。 |
[GetPrinterDriverEx | GetPrinterDriver と同じで、パラメーターが追加されています。 |
GetPrinterDriverDirectory | サーバーのプリンター ドライバー ディレクトリの名前を返します。 |
印刷ジョブ作成関数
関数 | 説明 |
---|---|
AbortPrinter (必須) | 指定した印刷キューから現在のジョブの削除を試みます。 |
AddJob (必須) | ジョブ識別子とスプール ファイル パスを返します。 呼び出し元は、CreateFile と WriteFile を使用して、スプール ファイルにデータを送信します。 |
EndDocPrinter (必須) | ジョブ完了操作を実行します。 |
EndPagePrinter | ページ補完操作を実行します。 |
ReadPrinter | 双方向プリンターから状態情報を取得します。 |
ScheduleJob (必須) | 指定したジョブをスケジュールできることをプロバイダーに通知します。 ジョブは、以前に AddJob によって返されたジョブ識別子によって指定されます。 |
StartDocPrinter (必須) | 印刷ジョブのスプールを開始するように印刷プロバイダーを準備します。 |
StartPagePrinter | 印刷ジョブ ページを受け取る印刷プロバイダーを準備します。 |
WritePrinter (必須) | 印刷ジョブのデータ ストリームの一部を受信します。 |
Note
AddJob...ScheduleJob シーケンスは、StartDocPrinter...EndDocPrinter シーケンスの代替です。
印刷ジョブのスケジューリング関数
関数 | 説明 |
---|---|
EnumJobs (必須) | スケジュールされた印刷ジョブの一覧を返します。 |
GetJob (必須) | ジョブ パラメーターを返します。 |
SetJob (必須) | 印刷ジョブをキャンセル、一時停止、再開、または再起動するか、ジョブ パラメーターを設定します。 |
帳票管理関数
関数 | 説明 |
---|---|
AddForm | 指定したプリンターで使用できるフォームの一覧に、指定したフォームを追加します。 |
DeleteForm | 指定したプリンターで使用できるフォームの一覧から、指定したフォームを削除します。 |
EnumForms | 指定したプリンターで使用できるフォームの一覧を返します。 |
GetForm | 指定したフォームの特性を返します。 |
SetForm | 指定したフォームの特性を変更します。 |
印刷プロセッサ管理関数
関数 | 説明 |
---|---|
AddPrintProcessor | 指定したサーバーに印刷プロセッサをインストールし、印刷プロバイダーが呼び出すことができるプリント プロセッサの一覧に追加します。 |
DeletePrintProcessor | 印刷プロバイダーが呼び出すことができる印刷プロセッサの一覧から印刷プロセッサを削除します。 |
EnumPrintProcessorDataTypes | 印刷プロバイダーによって呼び出し可能な印刷プロセッサでサポートされているデータ型の一覧を返します。 |
EnumPrintProcessors | 印刷プロバイダーが呼び出すことができる印刷プロセッサの一覧を返します。 |
GetPrintProcessorDirectory | 印刷プロセッサ ファイルを格納する必要があるディレクトリ パスを返します。 |
印刷モニター管理関数
関数 | 説明 |
---|---|
AddMonitor | 印刷プロバイダーが呼び出すことができる印刷モニターの一覧に印刷モニターを追加します。 |
DeleteMonitor | 印刷モニターが呼び出すことができる印刷プロセッサの一覧から印刷プロセッサを削除します。 |
EnumMonitors | 印刷プロバイダーが呼び出すことができる印刷モニターの一覧を返します。 |
ポート管理関数
関数 | 説明 |
---|---|
AddPort | プリンター ポートを使用可能なポートの一覧に追加します。通常は、指定されたポート モニターの AddPortUI 関数を呼び出します。 |
AddPortEx(/previous-versions/ff545025(v%3dvs.85)) | AddPort と同じで、パラメーターが追加されています。 |
ConfigurePort (必須) | プリンター ポートを構成します。通常は、指定されたポート モニターの ConfigurePortUI 関数を呼び出します。 |
DeletePort (必須) | プリンター ポートを使用可能なポートを一覧から削除します。通常は、指定されたポート モニターの DeletePortUI 関数を呼び出します。 |
EnumPorts (必須) | 使用可能なプリンター ポートのリストを返します。 |
SetPort | 指定したプリンター ポートのパラメーターを設定します。 |
レジストリ管理関数
関数 | 説明 |
---|---|
DeletePrinterData | 指定したプリンターの PrinterDriverData キーの下にある、指定した値名に現在割り当てられている値を削除します。 |
DeletePrinterDataEx | DeletePrinterData と同じで、パラメーターが追加されています。 |
DeletePrinterKey | 指定したプリンターの PrinterDriverData キーの下のレジストリに現在格納されている場合は、指定したキーとそのサブキーを削除します。 |
EnumPrinterData | 指定したプリンターの PrinterDriverData キーの下のレジストリに格納されている値名と現在割り当てられている値のそれぞれを返します。 |
EnumPrinterDataEx | EnumPrinterData と同じで、パラメーターが追加されています。 |
EnumPrinterKey | 指定したキー名の下のレジストリに現在含まれているサブキーの一覧を返します。 |
GetPrinterData | 指定したプリンターの PrinterDriverData キーの下のレジストリに格納されている、指定した値の名前に現在割り当てられている値を返します。 |
GetPrinterDataEx | GetPrinterData と同じで、パラメーターが追加されています。 |
SetPrinterData | 指定したプリンターの PrinterDriverData キーの下に、指定した値の名前と値をレジストリに格納します。 |
SetPrinterDataEx | SetPrinterData と同じで、パラメーターが追加されています。 |
その他の関数
関数 | 説明 |
---|---|
XcvData | ポート モニター UI DLL とポート モニター サーバー DLL の間の通信パスを提供します。 |