Freigeben über


SHInvokePrinterCommandW-Funktion (shellapi.h)

Führt einen Befehl für ein Druckerobjekt aus.

Hinweis Diese Funktion ist seit Windows Vista veraltet. Es wird empfohlen, verben auf Druckern über IContextMenu- oder ShellExecute-aufzurufen.
 

Syntax

BOOL SHInvokePrinterCommandW(
  [in, optional] HWND    hwnd,
                 UINT    uAction,
  [in]           LPCWSTR lpBuf1,
  [in, optional] LPCWSTR lpBuf2,
                 BOOL    fModal
);

Parameter

[in, optional] hwnd

Typ: HWND-

Das Handle des übergeordneten Fensters aller Fenster oder Dialogfelder, die während des Vorgangs erstellt werden.

uAction

Typ: UINT-

Der Typ des auszuführenden Druckervorgangs. Einer der folgenden Werte:

PRINTACTION_OPEN (0)

0x0. Öffnen Sie den durch lpBuf1angegebenen Drucker. Der parameter lpBuf2 wird ignoriert.

PRINTACTION_PROPERTIES (1)

0x1. Zeigen Sie die Eigenschaftenseiten für den von lpBuf1angegebenen Drucker an. Der lpBuf2--Parameter kann NULL- oder ein bestimmtes Eigenschaftenblatt benennen, das angezeigt werden soll, entweder nach Name oder Zahl. Wenn die hohe WORD- von lpBuf2- ungleich Null ist, wird davon ausgegangen, dass dieser Parameter ein Zeiger auf einen Puffer ist, der den Namen des zu öffnenden Blatts enthält. Andernfalls wird lpBuf2- als nullbasierter Index des Eigenschaftenblatts betrachtet, der geöffnet werden soll.

PRINTACTION_NETINSTALL (2)

0x2. Installieren Sie den durch lpBuf1angegebenen Netzwerkdrucker. Der parameter lpBuf2 wird ignoriert.

0x3. Erstellen Sie eine Verknüpfung mit dem Netzwerkdrucker, der durch lpBuf1angegeben wird. Der parameter lpBuf2 gibt das Laufwerk und den Pfad des Ordners an, in dem die Verknüpfung erstellt werden soll. Der Netzwerkdrucker muss bereits auf dem lokalen Computer installiert sein.

PRINTACTION_TESTPAGE (4)

0x4. Drucken Sie eine Testseite auf dem von lpBuf1angegebenen Drucker. Der parameter lpBuf2 wird ignoriert.

PRINTACTION_OPENNETPRN (5)

0x5. Öffnen Sie den durch lpBuf1angegebenen Netzwerkdrucker. Der parameter lpBuf2 wird ignoriert.

PRINTACTION_DOCUMENTDEFAULTS (6)

0x6. Zeigen Sie die Standarddokumenteigenschaften für den drucker an, der durch lpBuf1angegeben wird. Der parameter lpBuf2 wird ignoriert.

PRINTACTION_SERVERPROPERTIES (7)

0x7. Zeigen Sie die Eigenschaften für den Druckerserver an, der durch lpBuf1angegeben wird. Der parameter lpBuf2 wird ignoriert.

[in] lpBuf1

Typ: LPCTSTR-

Zeigen Sie auf eine mit Null beendete Zeichenfolge, die zusätzliche Informationen für den Druckerbefehl enthält. Die in diesem Parameter enthaltenen Informationen hängen vom Wert uActionab.

[in, optional] lpBuf2

Typ: LPCTSTR-

Zeigen Sie auf eine mit Null beendete Zeichenfolge, die zusätzliche Informationen für den Druckerbefehl enthält. Die in diesem Parameter enthaltenen Informationen hängen vom Wert uActionab.

fModal

Typ: BOOL-

TRUE, um anzugeben, dass SHInvokePrinterCommand- erst zurückgegeben werden soll, wenn der Befehl abgeschlossen ist; FALSE, wenn die Funktion zurückgegeben werden soll, sobald der Befehl initialisiert wird.

Rückgabewert

Typ: BOOL-

Gibt TRUE- zurück, wenn dies erfolgreich ist; andernfalls FALSE.

Bemerkungen

Wenn ein Druckername durch lpBuf1angegeben wird, kann der Name entweder der Name eines lokalen Druckers oder des Servers sein und den Namen eines Netzwerkdruckers freigeben. Wenn Sie einen Netzwerkdruckernamen angeben, muss der Name in diesem Format angegeben werden:

"\\<server><shared printer name>"

Diese Funktion wird in Shell-Versionen 4.71 und höher implementiert. Um die Abwärtskompatibilität mit früheren Shellversionen aufrechtzuerhalten, sollte diese Funktion nicht explizit verwendet werden. Stattdessen sollten die LoadLibrary und GetProcAddress- Funktionen verwendet werden, um die Funktionsadresse abzurufen.

Anmerkung

Der shellapi.h-Header definiert SHInvokePrinterCommand als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 2000 Professional, Windows XP [nur Desktop-Apps]
mindestens unterstützte Server- Windows 2000 Server [nur Desktop-Apps]
Zielplattform- Fenster
Header- shellapi.h
Library Shell32.lib
DLL- Shell32.dll (Version 4.71 oder höher)