次の方法で共有


言語モニター

言語モニターは2つの目的があるユーザー モード DLL です。

  • これらは、ソフトウェアでアクセス可能な状態情報を提供できる、印刷スプーラーと双方向プリンターの間の全二重通信パスを提供します。

  • プリンター・ジョブ言語によって定義されたコマンドなどのプリンター制御情報をデータ ストリームに追加します。

Microsoft では、プリンター ジョブ言語 (PJL) をサポートする言語モニター Pjlmon.dllを提供し、PJL プリンターの双方向通信を提供しています。 詳細については、 サンプル言語モニターを参照してください。

カスタマイズされた言語モニターは、一方向または双方向のプリンター用に、他のジョブ制御言語をサポートするように記述できます。

言語モニターはオプションであり、印刷モニターのインストールの説明に従って、プリンターの INF ファイルに含まれている場合にのみ、特定のプリンターの種類に関連付けられます。

[プリンターのプロパティ] ダイアログ ボックスの ポート タブで 双方向サポートの有効化チェック ボックスをオフにした場合、スプーラーは、言語モニターの StartDocPortWritePortEndDocPortGetPrinterDataFromPortReadPort 関数を呼び出しません。

スプーラーは、双方向サポートの有効化が解除された場合でも、OpenPortExClosePortSendRecvBidiDataFromPort 関数を引き続き呼び出します。 双方向サポートチェックを有効にするボックスは、アプリケーションが双方向通信 API で関数を呼び出すときに行われる言語モニターの呼び出しには影響しません。

言語モニターがプリンターに関連付けられている場合、言語モニターは印刷プロセッサーからプリンターのデータ ストリームを受け取り、変更してプリンターのポートモニターに渡します。 詳細については、言語とポート モニターの相互作用を参照してください。

Note

言語モニターは常に SendRecvBidiDataFromPort 関数を実装し、MONITOR2構造体の pfnSendRecvBidiDataFromPort メンバーに関数のアドレスを含める必要があります。

言語モニターが bidi をサポートしていない場合、または言語モニターがサポートしていない bidi スキーマ値が要求に含まれている場合、言語モニターはポート モニターの SendRecvBidiDataFromPort 関数に呼び出しを転送する必要があります。