Winspool
表示
この記事の主題はウィキペディアにおける独立記事作成の目安を満たしていないおそれがあります。 (2018年3月) |
Winspoolとは、Microsoft社のWindowsにおける印刷スプールである。
Windows 95以降から存在しているが、OSのバージョン(種類)によってWinspoolの仕様が異なっているが、下位互換性がある[1]。
言語から利用する際はWin32APIなので、Winspool.DRVではあるがDLL通信を利用する言語仕様に合わせて記述する必要がある。
C++であれば #include <winspool.h> がサポートされている[2]。
スプール先をネットワークプリンタにすることはできるが、言語からWinspoolを利用しての出力は、利用しているWindows上にインストールされているプリンタのみが利用対象プリンタとなる。
スプールの種類には一般的なNT EMF スプーリングの他に、プリンタドライバによるGDI処理を行わずにプリンタ固有の制御コード(ESC/PやPDFなど)を直接プリンタへ送信する方法がある。
プリンタ固有の制御コードは生(Raw)情報なので、事前に生成してプリンタへ送信することを「Raw印刷」とも呼ばれる[3]。具体的なソースコードとして、GitHub上でRawPrintが公開されている[4] (コマンドラインの引数にプリンタ名、ファイルパス、印刷ジョブ名の3つを指定することが可能)。