2

すべての印刷ジョブを 1 台のマシンに接続する方法を探しています。

Windows XP を実行しているキオスク コンピュータがいくつかあり、顧客が印刷できるようにしたいと考えています。プリンターに送信される印刷ジョブをキャッチして分析し、ユーザーに印刷の価格を示すダイアログを表示し、ユーザーが承認した場合はジョブをプリンターに送信できるようにしたいと考えています。

彼が承認しない場合、その仕事は取り消されなければなりません。

私の最初のアイデアは、フックを使用することでした。しかし、ジョブを印刷するためのフックはありますか? どのように使用されますか?

PCL (Printer Command Language) について言及した人もいます。これは、ローカル プリンター ドライバーのラッパーを作成することを意味します。それはどのくらい難しいですか?PCL の適切なチュートリアルはどこにありますか?

PJL(プリンタージョブ言語)はどうですか?

ターゲット言語は c++ です。

ご意見をお待ちしております。

ありがとう、サマーバルブ

4

1 に答える 1

2

WMIを使用して、を使用して新しいプリンタージョブに関する通知を受け取ることができますWin32_PrintJob

ジョブが作成されたらすぐに、ジョブを呼び出しPauseて一時停止し、GUIを表示します。クライアントがジョブを受け入れる場合は、を呼び出しResumeて実際にファイルを印刷します。

WMI通知を処理するC++の例については、例:WMIを介したイベント通知の受信を参照してください。

于 2011-08-24T10:17:22.760 に答える