スプール・・・・・・・・・パソコンとプリンターの処理を比べたとき
(スプーリング) 普通は明らかにプリンターのが遅い。
その処理の時間差を埋めるために、一度印刷データを
プリンタドライバが受け取って、貯めておき
プリンターの進み具合に応じてデータを順次送る動作を指す。
プリントスプーラ・・・・・Windowsの印刷関係の処理の中核となるシステムアプリケーションの名前。
WINSPOOL.DRVがそれ。
プリントスプーラは、プリンタドライバのインストール先を調べる、
ドライバをロードする、高レベルの関数を生データに変換する、
ディスク上に印刷ジョブを作成するなどを実行する。
また、現在の印刷ジョブと目的のプリンタを監視し、印刷を
印刷を始めるべき時間を決定するなどを行う。
印刷を開始する事にした時点で、プリントプロセッサを呼び出す。
RAWデータ ・・・・・・・・直訳すると「生データ」。
プリンタは、プリンタメーカが独自の規格に基づいて製造している。
したがって、指定された形式の文字を印刷するために、プリンタが
どのようなコードで受け取るかはプリンタにより異なる。
このタイプのコードを「RAWデータ」という。
ちなみにWindowsはEMF(拡張メタファイル)を作成してから
RAWデータに変換している。この処理はバックグラウンドで行われる。
プリンタドライバ・・・・・プリンタを制御するためのデバイスドライバ
印刷ジョブ・・・・・・・・印刷処理の一つの単位
ジャーナルレコード・・・・「journal」の英語の意味は「日誌、記録」である。
その実体は、テキストを出力するコマンド、グラフックを出力する
コマンドなどを保持する構造体である。
プリンタモニタ・・・・・・デバイスドライバがすべてのジャーナルファイルをデバイスの生の
コマンドに変換すると、変換されたコマンドの
ファイルはスプーラに戻される。
スプーラは、これらの低レベルのコマンドをモニタに送る。
プリンタモニタは、ネットワーク、パラレルポートなどを通じて
デバイスに生のコマンドを送るアプリケーションである。
グラフィックスエンジン・・プリンタプロセッサ出力をデバイスドライバ関数に
変換するアプリケーション。
デバイスドライバは、これらのコールを処理し
デバイスが処理可能な生のコマンドに変換する。
直接データを送る方法・・・通常はプリンタドライバを介して、プリンタに対してデータを送る。
しかし、プリンタに対してデータを直接的に送りたいということもある。
それにはxxxPrinter()関数を使う。例えばWritePrinter()関数である。
しかし、そのまま実行しても、おそらく処理は成功しないだろう。
そこには「スプーラ」が暗黙の了解として仲介されるからだ。
このスプーラをoffにすればWritePrinter()関数などは成功する。
| 関数名 | 機能 | Sample |
| 印刷 | ||
| AbortDoc | 印刷を中止する | なし |
| AbortPrinter | プリンタのスプールファイルを削除する | なし |
| AbortProc | SetAbortProc()関数のコールバック関数 | なし |
| AddJob | スプールされた印刷ジョブのを保管するファイルのパスを取得する | なし |
| AddMonitor | ローカルプリンタモニタをインストールする | なし |
| AddPort | サポートされたポートのリストにポート名を追加する | なし |
| AddPrinter | 指定のサーバーにプリンタを追加する | なし |
| AddPrinterDriver | プリンタドライバをインストールする | なし |
| AddPrintProcessor | サーバーにプリントプロセッサを追加する | なし |
| AddPrintProvidor | サーバーに印刷プロバイダをインストールする | なし |
| AdvancedDocumentProperties | プリンタ設定用ダイアログボックスを表示する | なし |
| ClosePrinter | プリンタオブジェクトをクローズする | なし |
| ConfigurePort | ポート設定用ダイアログボックスを表示する | なし |
| ConnectToPrinterDlg | ネットワーク上のプリンタに接続するためのダイアログボックスを表示する | なし |
| DeleteMonitor | プリンタモニタを削除する | なし |
| DeletePort | ポート名を削除するためのダイアログボックスを表示する | なし |
| DeletePrinter | プリンタオブジェクトを削除する | なし |
| DeletePrinterDriver | サーバーのドライバリストからプリンタドライバを削除する | なし |
| DeletePrintProcessor | プリンタプロセッサを削除する | なし |
| DeletePrintProvidor | プリンタプロバイダを削除する | なし |
| DeviceCapabilities | プリンタ情報を取得する | なし |
| DocumentProperties | プリンタ初期化情報を取得・変更あるいは設定ダイアログを表示する | なし |
| EndDoc | 印刷ジョブを正常終了させる | なし |
| EndDocPrinter | 指定のプリンタの印刷ジョブを終了させる | なし |
| EndPage | 印刷のための出力が終了したことをデバイスに通知する | なし |
| EndPagePrinter | 指定のプリンタの1ページの印刷を終了する | なし |
| EnumJobs | 指定のプリンタの印刷ジョブをリストアップする | なし |
| EnumMonitors | MONITOR_INFO_1構造体を初期化する | なし |
| EnumPorts | 指定のサーバー上で印刷に使用できるポートをリストアップする | なし |
| EnumPrinterDrivers | 指定のプリンタサーバー上にインストールされているドライバをリストアップする | なし |
| EnumPrinters | 使用可能なプリンタ・プリントサーバーなどをリストアップする | なし |
| EnumPrintProcessorDataTypes | 指定のプリントプロセッサがサポートするデータのタイプをリストアップする | なし |
| EnumPrintProcessors | 指定のサーバーにインストールされたプリントプロセッサをリストアップする | なし |
| GetPrintProcessorDirectory | 指定のサーバーのプリンタプロセッサの情報を取得する | なし |
| GetJob | 指定のプリンタの印刷ジョブ情報を取得する | なし |