Funzione SHInvokePrinterCommandA (shellapi.h)
Esegue un comando in un oggetto stampante.
Sintassi
BOOL SHInvokePrinterCommandA(
[in, optional] HWND hwnd,
UINT uAction,
[in] LPCSTR lpBuf1,
[in, optional] LPCSTR lpBuf2,
BOOL fModal
);
Parametri
[in, optional] hwnd
Tipo: HWND
Handle della finestra padre di tutte le finestre o finestre di dialogo create durante l'operazione.
uAction
Tipo: UINT
Tipo di operazione della stampante da eseguire. Uno dei valori seguenti:
PRINTACTION_OPEN (0)
0x0. Aprire la stampante specificata da lpBuf1. Il parametro lpBuf2 viene ignorato.
PRINTACTION_PROPERTIES (1)
0x1. Visualizzare le pagine delle proprietà per la stampante specificata da lpBuf1. Il parametro lpBuf2 può essere NULL o può assegnare un nome a un foglio di proprietà specifico da visualizzare, in base al nome o al numero. Se l'alto word di lpBuf2 è diverso da zero, si presuppone che questo parametro sia un puntatore a un buffer contenente il nome del foglio da aprire. In caso contrario, lpBuf2 viene visto come indice in base zero del foglio delle proprietà da aprire.
PRINTACTION_NETINSTALL (2)
0x2. Installare la stampante di rete specificata da lpBuf1. Il parametro lpBuf2 viene ignorato.
PRINTACTION_NETINSTALLLINK (3)
0x3. Creare un collegamento alla stampante di rete specificata da lpBuf1. Il parametro lpBuf2 specifica l'unità e il percorso della cartella in cui creare il collegamento. La stampante di rete deve essere già stata installata nel computer locale.
PRINTACTION_TESTPAGE (4)
0x4. Stampare una pagina di test nella stampante specificata da lpBuf1. Il parametro lpBuf2 viene ignorato.
PRINTACTION_OPENNETPRN (5)
0x5. Aprire la stampante di rete specificata da lpBuf1. Il parametro lpBuf2 viene ignorato.
PRINTACTION_DOCUMENTDEFAULTS (6)
0x6. Visualizzare le proprietà predefinite del documento per la stampante specificata da lpBuf1. Il parametro lpBuf2 viene ignorato.
PRINTACTION_SERVERPROPERTIES (7)
0x7. Visualizzare le proprietà per il server stampante specificato da lpBuf1. Il parametro lpBuf2 viene ignorato.
[in] lpBuf1
Tipo: LPCTSTR
Puntatore a una stringa con terminazione null contenente informazioni aggiuntive per il comando stampante. Le informazioni contenute in questo parametro dipendono dal valore di uAction.
[in, optional] lpBuf2
Tipo: LPCTSTR
Puntatore a una stringa con terminazione null contenente informazioni aggiuntive per il comando stampante. Le informazioni contenute in questo parametro dipendono dal valore di uAction.
fModal
Tipo: BOOL
TRUE per specificare che SHInvokePrinterCommand non deve restituire fino al completamento del comando; FALSE se la funzione deve restituire non appena viene inizializzato il comando.
Valore restituito
Tipo: BOOL
Restituisce TRUE se ha esito positivo; in caso contrario, FALSE.
Commenti
Quando un nome della stampante viene specificato da lpBuf1, il nome può essere il nome di una stampante locale o del server e condividere il nome di una stampante di rete. Quando si specifica un nome della stampante di rete, il nome deve essere specificato in questo formato:
"\\<server><shared printer name>"
Questa funzione viene implementata in Shell versioni 4.71 e successive. Per mantenere la compatibilità con le versioni precedenti di Shell, questa funzione non deve essere usata in modo esplicito. Le funzioni LoadLibrary e GetProcAddress devono invece essere usate per ottenere l'indirizzo della funzione.
Nota
L'intestazione shellapi.h definisce SHInvokePrinterCommand come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional, Windows XP [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | shellapi.h |
Libreria | Shell32.lib |
DLL | Shell32.dll (versione 4.71 o successiva) |