PtlDrvConvertクラスのプリンター選択関数「SelectPrinter」は、変換処理をどのプリンターに対して行うのかを決める関数です。選択対象は、モデル名が「Antenna House PDF Driver 8.0」であるプリンターです。
複数のスレッドあるいは複数のプロセスから同時にPDF Driver V8.0で印刷処理をさせる場合、プログラムのコードでは、印刷実行前に「SelectPrinter」をコールするようにしてください。
(1) SelectPrinter(NULL)
引数がNULLの場合は、プリンター名「Antenna House PDF Driver 8.0」を選択します。
(2) SelectPrinter(L"")
引数が空文字列の場合は、SelectPrinter側で処理が可能な状態にあるプリンターを選択します。プリンターが見つからない場合は、エラーになります。プリンターの選択に成功した場合は、「GetSelectedPrinter」によりプリンター名を取得することができます。
(3) SelectPrinter("[プリンター名]")
引数に名称が指定されている場合、すでにその名称のプリンターが存在するときにはそれを選択状態にします。存在しないときには、SelectPrinter側でプリンターを作成します。
プログラム側でプリンターを作成する場合は、プログラム自体、あるいは、プログラムを実行するユーザーに、プリンターが作成可能な権限が必要となります。
SelectPrinter側でプリンターを作成した場合、印刷終了後にそのプリンターは削除されます。
(4) プログラム側でSelectPrinterの呼び出しが行われなかった場合
「SelectPrinter(L"")」と同じ仕様で動作します。
プリンターが「選択状態」になると、他のプロセスやスレッドからはそのプリンターをPDF Driver APIでは使用できなくなりますが、PDF Driver API以外からは使用できます。
PDF Driver APIからプリンターを利用するプログラムが動作している間は、PDF Driver API以外からそのプリンターが使用されないようにしてください。
SelectPrinter関数が返す値の内容については、「エラーコード一覧」を参照してください。
プログラムで使用が終わったプリンターは、「ReleasePrinter」で選択状態を解放します。「ReleasePrinter」は、デストラクタで呼ばれるよう設計されています。
「SelectPrinter」が作成したプリンターは、自動的に削除されます。