Funzione ConfigurePortUI (winsplp.h)
Una DLL dell'interfaccia utente di monitoraggio delle porte funzione ConfigurePortUI ottiene le informazioni di configurazione della porta dall'utente e la invia alla DLL del server di monitoraggio delle porte.
Sintassi
BOOL WINAPI pfnConfigurePortUI(
_In_opt_ PCWSTR pszServer,
_In_ HWND hWnd,
_In_ PCWSTR pszPortName
);
Parametri
[in, optional] pszServer
Puntatore fornito dal chiamante a una stringa che rappresenta un nome del server o NULL se la stampante è locale. Il monitoraggio delle porte può ignorare questo parametro.
[in] hWnd
Handle fornito dal chiamante della finestra che deve essere utilizzato come elemento padre per le finestre di dialogo. Se NULL, non devono essere visualizzate finestre di dialogo.
[in] pszPortName
Puntatore fornito dal chiamante a una stringa che rappresenta il nome della porta da configurare.
Valore restituito
Se l'operazione ha esito positivo, la funzione deve restituire TRUE. In caso contrario, deve restituire FALSE. Se l'operazione non è supportata o viene annullata dall'utente (selezionando CANCEL o selezionando OK senza modificare i parametri di configurazione), la funzione deve chiamare SetLastError(ERROR_CANCELLED), quindi restituire FALSE.
Osservazioni
Le DLL dell'interfaccia utente di Monitoraggio porte sono necessarie per definire una funzione di ConfigurePortUI e includere l'indirizzo della funzione in una struttura MONITORUI.
Lo spooler del client chiama ConfigurePortUI dall'interno della relativa funzione ConfigurePort (descritto nella documentazione di Microsoft Windows SDK). Gli argomenti ricevuti da ConfigurePortUI sono gli argomenti ricevuti da ConfigurePort.
La funzione deve eseguire le operazioni seguenti:
-
Chiamare OpenPrinter, specificando un nome di stampante con il formato seguente:
- \\ NomeServer\,XcvPortPortName
dove serverName e PortName sono i nomi di porta e server ricevuti come argomenti della funzione ConfigurePortUI.
La chiamata a OpenPrinter richiede una struttura PRINTER_DEFAULTS, descritta nella documentazione di Windows SDK. Il membro DesiredAccess della struttura deve essere impostato su SERVER_ACCESS_ADMINISTER. I relativi pDatatype e pDevMode possono essere NULL.
Questa chiamata fa sì che venga chiamata la funzione di XcvOpenPort della DLL del server di monitoraggio di stampa.
- Ottenere i parametri di configurazione della porta dall'utente visualizzando una finestra di dialogo.
- Chiamare XcvData una o più volte, specificando stringhe di nome dati personalizzate, per inviare ogni parametro di configurazione alla DLL del server. Ogni chiamata XcvData fa sì che venga chiamata la funzione di XcvDataPort del server.
- Chiamare ClosePrinter, specificando l'handle ricevuto da OpenPrinter. In questo modo viene chiamata la funzione XcvClosePort della DLL del server.
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Desktop |
intestazione | winsplp.h (includere Winsplp.h) |
libreria | NtosKrnl.exe |