Condividi tramite


Funzione SHInvokePrinterCommandW (shellapi.h)

Esegue un comando su un oggetto stampante.

Nota Questa funzione è stata deprecata a partire da Windows Vista. È consigliabile richiamare i verbi sulle stampanti tramite IContextMenu o ShellExecute.
 

Sintassi

BOOL SHInvokePrinterCommandW(
  [in, optional] HWND    hwnd,
                 UINT    uAction,
  [in]           LPCWSTR lpBuf1,
  [in, optional] LPCWSTR 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 oppure assegnare un nome a una finestra delle proprietà specifica da visualizzare, in base al nome o al numero. Se l' word elevata 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 visualizzato come indice in base zero della finestra delle proprietà da aprire.

PRINTACTION_NETINSTALL (2)

0x2. Installare la stampante di rete specificata da lpBuf1. Il parametro lpBuf2 viene ignorato.

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 della stampante specificato da lpBuf1. Il parametro lpBuf2 viene ignorato.

[in] lpBuf1

Tipo: LPCTSTR

Puntatore a una stringa con terminazione Null che contiene informazioni aggiuntive per il comando della stampante. Le informazioni contenute in questo parametro dipendono dal valore di uAction.

[in, optional] lpBuf2

Tipo: LPCTSTR

Puntatore a una stringa con terminazione Null che contiene informazioni aggiuntive per il comando della 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 in caso di esito positivo; in caso contrario, FALSE.

Osservazioni

Quando un nome della stampante viene specificato da lpBuf1, il nome può essere il nome di una stampante locale o del server e il nome della condivisione di una stampante di rete. Quando si specifica un nome di 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. Per ottenere l'indirizzo della funzione, è consigliabile usare invece il LoadLibrary e GetProcAddress.

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 del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

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 Finestre
intestazione shellapi.h
libreria Shell32.lib
dll Shell32.dll (versione 4.71 o successiva)