DLL point e print

Facoltativamente, è possibile specificare una DLL punto e stampa speciale associandone il nome al valore del Registro di sistema del modulo . Questa DLL deve esportare le due funzioni seguenti:

GenerateCopyFilePaths
Questa funzione, chiamata sia dallo spooler del server che dallo spooler del client, può essere usata per modificare il percorso della directory specificato dal valore del Registro di sistema directory . Il percorso di origine (nel server) o il percorso di destinazione (nel client) o entrambi possono essere modificati.

SpoolerCopyFileEvent
Questa funzione, chiamata anche dallo spooler del server e dallo spooler del client, riceve un codice evento che indica l'occorrenza di determinati eventi della stampante correlati alla connessione.

Una DLL Point and Print non richiede solo l'esportazione di queste funzioni. Ad esempio, Mscms.dll, che viene usato dal componente ICM di Microsoft, esporta anche un set di funzioni API ICM.

Si noti che è possibile specificare altre DLL oltre a o anziché una DLL point e print che esporta GenerateCopyFilePaths e SpoolerCopyFileEvent. A tale scopo, assegnare i nomi di file DLL alla chiave del Registro di sistema Files anziché alla chiave del Registro di sistema Del modulo . Vedere Installazione di file Queue-Specific.

Dopo che l'applicazione di installazione ha inserito il nome della DLL nel Registro di sistema del server chiamando SetPrinterDataEx, tutte le chiamate successive a SetPrinterDataEx generano una chiamata alla funzione SpoolerCopyFileEvent della DLL, con un codice evento fornito di COPYFILE_EVENT_SET_PRINTER_DATAEX.

A differenza dei file elencati nella chiave del Registro di sistema File (vedere Installazione di file Queue-Specific), la DLL punto e stampa non viene copiata dal server di stampa al client quando il client si connette a una stampante. Si presuppone invece che la DLL sia già residente dal client quando viene stabilita una connessione al server di stampa. Di conseguenza, la DLL può essere usata per scopi aggiuntivi non correlati alla funzionalità Point and Print.

Un metodo per installare la DLL point e print in un client consiste nel specificare il nome in un file INF della stampante come file dipendente, in modo che il file possa essere copiato nella directory del driver del client durante il download di file specifici del driver.