次の方法で共有


ポイント アンド プリント DLL

必要に応じて、その名前を Module レジストリ値に関連付けることで、特別なポイント アンド プリント DLL を指定できます。 この DLL は、次の2つの関数をエクスポートする必要があります。

GenerateCopyFilePaths
この関数は、サーバーのスプーラーとクライアントのスプーラーの両方によって呼び出され、ディレクトリ レジストリ値で指定されたディレクトリ パスを変更するために使用できます。 ソース パス (サーバー上) または宛先パス (クライアント上) のいずれか、またはその両方を変更できます。

SpoolerCopyFileEvent
この関数は、サーバーのスプーラーとクライアントのスプーラーの両方によって呼び出され、特定の接続関連のプリンター イベントの発生を示すイベント コードを受け取ります。

ポイント アンド プリント DLL では、これらの関数のみをエクスポートする必要はありません。 たとえば、Microsoft の ICM コンポーネントで使用される Mscms.dll は、ICM API 関数のセットもエクスポートします。

GenerateCopyFilePathsSpoolerCopyFileEvent をエクスポートするポイント アンド プリント DLL に加えて、または代わりに他の DLL を指定できることに注意してください。 これを行うには、モジュール レジストリ キーではなく、ファイル レジストリ キーに DLL ファイル名を割り当てます。 キュー固有ファイルのインストールを参照してください。

インストール アプリケーションが SetPrinterDataEx を呼び出してサーバーのレジストリに DLL の名前を配置すると、SetPrinterDataEx をそれ以降のすべての呼び出しで DLL の SpoolerCopyFileEvent 関数が呼び出され、COPYFILE_EVENT_SET_PRINTER_DATAEXのイベント コードが提供されます。

ファイル レジストリ キー (キュー固有ファイルのインストールを参照) の下に一覧表示されているファイルとは異なり、ポイント アンド プリント DLL は、クライアントがプリンターに接続するときに、プリント サーバーからクライアントにコピーされません。 代わりに、プリント サーバーへの接続が確立されると、DLL は既にクライアント常駐であると見なされます。 その結果、DLL は、ポイントと印刷の機能に関連しない追加の目的で使用できます。

ポイント アンド プリント DLL をクライアントにインストールする方法の 1 つは、ドライバー固有のファイルのダウンロード中にファイルをクライアントのドライバー ディレクトリにコピーできるように、プリンター INF ファイル内の名前を依存ファイルとして指定することです。