PRINTDLGEXA-Struktur (commdlg.h)

Enthält Informationen, die die PrintDlgEx-Funktion zum Initialisieren des Print-Eigenschaftenblatts verwendet. Nachdem der Benutzer das Eigenschaftenblatt geschlossen hat, verwendet das System diese Struktur, um Informationen über die Auswahl des Benutzers zurückzugeben.

Syntax

typedef struct tagPDEXA {
  DWORD            lStructSize;
  HWND             hwndOwner;
  HGLOBAL          hDevMode;
  HGLOBAL          hDevNames;
  HDC              hDC;
  DWORD            Flags;
  DWORD            Flags2;
  DWORD            ExclusionFlags;
  DWORD            nPageRanges;
  DWORD            nMaxPageRanges;
  LPPRINTPAGERANGE lpPageRanges;
  DWORD            nMinPage;
  DWORD            nMaxPage;
  DWORD            nCopies;
  HINSTANCE        hInstance;
  LPCSTR           lpPrintTemplateName;
  LPUNKNOWN        lpCallback;
  DWORD            nPropertyPages;
  HPROPSHEETPAGE   *lphPropertyPages;
  DWORD            nStartPage;
  DWORD            dwResultAction;
} PRINTDLGEXA, *LPPRINTDLGEXA;

Member

lStructSize

Art: DWORD

Die Strukturgröße in Bytes.

hwndOwner

Typ: HWND

Ein Handle für das Fenster, das das Eigenschaftenblatt besitzt. Dieser Member muss ein gültiges Fensterhandle sein. Es darf nicht NULL sein.

hDevMode

Typ: HGLOBAL

Ein Handle für ein bewegliches globales Speicherobjekt, das eine DEVMODE-Struktur enthält. Wenn hDevMode bei der Eingabe nicht NULL ist, müssen Sie einen beweglichen Speicherblock für die DEVMODE-Struktur zuordnen und deren Member initialisieren. Die PrintDlgEx-Funktion verwendet die Eingabedaten, um die Steuerelemente im Eigenschaftenblatt zu initialisieren. Wenn PrintDlgEx zurückgibt, geben die DEVMODE-Member die Eingabe des Benutzers an.

Wenn hDevMode bei der Eingabe NULL ist, weist PrintDlgEx Arbeitsspeicher für die DEVMODE-Struktur zu, initialisiert deren Member, um die Eingabe des Benutzers anzugeben, und gibt ein Handle zurück, das sie identifiziert.

Weitere Informationen zu den Elementen hDevMode und hDevNames finden Sie im Abschnitt Hinweise am Ende dieses Themas.

hDevNames

Typ: HGLOBAL

Ein Handle für ein bewegliches globales Speicherobjekt, das eine DEVNAMES-Struktur enthält. Wenn hDevNames bei der Eingabe nicht NULL ist, müssen Sie einen beweglichen Speicherblock für die DEVNAMES-Struktur zuordnen und deren Member initialisieren. Die PrintDlgEx-Funktion verwendet die Eingabedaten, um die Steuerelemente im Eigenschaftenblatt zu initialisieren. Wenn PrintDlgEx zurückgibt, enthalten die DEVNAMES-Member Informationen für den vom Benutzer ausgewählten Drucker. Sie können diese Informationen verwenden, um einen Gerätekontext oder einen Informationskontext zu erstellen.

Der hDevNames-Member kann NULL sein. In diesem Fall weist PrintDlgEx Arbeitsspeicher für die DEVNAMES-Struktur zu, initialisiert seine Member, um die Eingabe des Benutzers anzugeben, und gibt ein Handle zurück, das ihn identifiziert.

Weitere Informationen zu den Elementen hDevMode und hDevNames finden Sie im Abschnitt Hinweise am Ende dieses Themas.

hDC

Typ: HDC

Ein Handle für einen Gerätekontext oder einen Informationskontext, je nachdem, ob das Flags-Element das PD_RETURNDC - oder PC_RETURNIC-Flag angibt. Wenn keines der Flags angegeben ist, ist der Wert dieses Members undefiniert. Wenn beide Flags angegeben sind, hat PD_RETURNDC Priorität. Wenn hDC nicht NULL ist, müssen Sie DeleteDC aufrufen, um das GDI-Objekt freizusetzen, nachdem Sie es nicht mehr benötigen. Andernfalls werden GDI-Objekte bei jedem Aufruf von PrintDlgw-APIs verloren.

Flags

Art: DWORD

Eine Reihe von Bitflags, die Sie verwenden können, um das Print-Eigenschaftenblatt zu initialisieren. Wenn die PrintDlgEx-Funktion zurückgibt, legt sie diese Flags fest, um die Eingabe des Benutzers anzugeben. Bei diesem Member kann es sich um einen oder mehrere der folgenden Werte handeln.

Um sicherzustellen, dass PrintDlg oder PrintDlgEx die richtigen Werte in den Elementen dmCopies und dmCollate der DEVMODE-Struktur zurückgibt, legen Sie PD_RETURNDC = TRUE und PD_USEDEVMODECOPIESANDCOLLATE = TRUE fest. Dabei ist der nCopies-Member der PRINTDLG-Struktur immer 1, und PD_COLLATE ist immer FALSE.

Um sicherzustellen, dass PrintDlg oder PrintDlgEx die richtigen Werte in nCopies und PD_COLLATE zurückgibt, legen Sie PD_RETURNDC = TRUE und PD_USEDEVMODECOPIESANDCOLLATE = FALSE fest. Dabei ist dmCopies immer 1 und dmCollate ist immer FALSE.

Wenn Sie ab Windows Vista PrintDlg oder PrintDlgEx aufrufen, wobei PD_RETURNDC auf TRUE und PD_USEDEVMODECOPIESANDCOLLATE auf FALSE festgelegt ist, legt die PrintDlg - oder PrintDlgEx-Funktion die Anzahl der Kopien im nCopies-Member der PRINTDLG-Struktur fest und legt die Anzahl der Kopien in der Struktur fest, die durch den hDC-Member der PRINTDLG-Struktur dargestellt wird.

Wenn Sie GDI aufrufen, müssen Sie den Wert von nCopies ignorieren, den Wert als 1 betrachten und das zurückgegebene hDC verwenden, um das Drucken doppelter Kopien zu vermeiden.

Wert Bedeutung
PD_ALLPAGES
0x00000000
Das Standardflag, das angibt, dass das Optionsfeld Alle anfänglich ausgewählt ist. Dieses Flag wird als Platzhalter verwendet, um anzugeben, dass die Flags PD_PAGENUMS, PD_SELECTION und PD_CURRENTPAGE nicht angegeben sind.
PD_COLLATE
0x00000010
Wenn dieses Flag festgelegt ist, ist das Kontrollkästchen Sortieren aktiviert.

Wenn dieses Flag festgelegt wird, wenn die PrintDlgEx-Funktion zurückgibt, muss die Anwendung die Sortierung mehrerer Kopien simulieren. Weitere Informationen finden Sie in der Beschreibung des flags PD_USEDEVMODECOPIESANDCOLLATE .

Siehe PD_NOPAGENUMS.

PD_CURRENTPAGE
0x00400000
Wenn dieses Flag festgelegt ist, wird das Optionsfeld Aktuelle Seite ausgewählt. Wenn keines der flags PD_PAGENUMS, PD_SELECTION oder PD_CURRENTPAGE festgelegt ist, wird das Optionsfeld Alle ausgewählt.
PD_DISABLEPRINTTOFILE
0x00080000
Deaktiviert das Kontrollkästchen In Datei drucken .
PD_ENABLEPRINTTEMPLATE
0x00004000
Gibt an, dass die Member hInstance und lpPrintTemplateName einen Ersatz für die Standarddialogfeldvorlage im unteren Teil der Seite Allgemein angeben. Die Standardvorlage enthält Steuerelemente, die denen des Dialogfelds Drucken ähneln. Das System verwendet die angegebene Vorlage, um ein Fenster zu erstellen, das ein untergeordnetes Element der Seite Allgemein ist.
PD_ENABLEPRINTTEMPLATEHANDLE
0x00010000
Gibt an, dass das hInstance-Element einen Datenblock identifiziert, der eine vorab geladene Dialogfeldvorlage enthält. Diese Vorlage ersetzt die Standarddialogfeldvorlage im unteren Teil der Seite Allgemein . Das System verwendet die angegebene Vorlage, um ein Fenster zu erstellen, das ein untergeordnetes Element der Seite Allgemein ist. Das System ignoriert den lpPrintTemplateName-Member , wenn dieses Flag angegeben ist.
PD_EXCLUSIONFLAGS
0x01000000
Gibt an, dass das ExclusionFlags-Element Elemente identifiziert, die von den Eigenschaftenseiten des Druckertreibers ausgeschlossen werden sollen. Wenn dieses Flag nicht festgelegt ist, werden Elemente standardmäßig von den Eigenschaftenseiten des Druckertreibers ausgeschlossen. Die Ausschlüsse verhindern die Duplizierung von Elementen auf der Seite Allgemein , allen anwendungsspezifischen Seiten und den Druckertreiberseiten.
PD_HIDEPRINTTOFILE
0x00100000
Blendet das Kontrollkästchen In Datei drucken aus.
PD_NOCURRENTPAGE
0x00800000
Deaktiviert das Optionsfeld Aktuelle Seite .
PD_NOPAGENUMS
0x00000008
Deaktiviert das Optionsfeld Seiten und die zugehörigen Bearbeitungssteuerelemente. Außerdem wird das Kontrollkästchen Sortieren im Dialogfeld angezeigt.
PD_NOSELECTION
0x00000004
Deaktiviert das Optionsfeld Auswahl .
PD_NOWARNING
0x00000080
Verhindert, dass die Warnmeldung angezeigt wird, wenn ein Fehler auftritt.
PD_PAGENUMS
0x00000002
Wenn dieses Flag festgelegt ist, ist das Optionsfeld Seiten ausgewählt. Wenn keines der flags PD_PAGENUMS, PD_SELECTION oder PD_CURRENTPAGE festgelegt ist, wird das Optionsfeld Alle ausgewählt. Wenn dieses Flag festgelegt wird, wenn die PrintDlgEx-Funktion zurückgibt, gibt das lpPageRanges-Element die vom Benutzer angegebenen Seitenbereiche an.
PD_PRINTTOFILE
0x00000020
Wenn dieses Flag festgelegt ist, ist das Kontrollkästchen In Datei drucken aktiviert. Wenn dieses Flag festgelegt wird, wenn PrintDlgEx zurückgibt, enthält der durch das wOutputOffset-Element der DEVNAMES-Struktur angegebene Offset die Zeichenfolge "FILE:". Wenn Sie die StartDoc-Funktion aufrufen, um den Druckvorgang zu starten, geben Sie diese Zeichenfolge "FILE:" im lpszOutput-Element der DOCINFO-Struktur an. Wenn Sie diese Zeichenfolge angeben, fragt das Drucksubsystem den Benutzer nach dem Namen der Ausgabedatei ab.
PD_RETURNDC
0x00000100
Bewirkt, dass PrintDlgEx einen Gerätekontext zurückgibt, der den Vom Benutzer im Eigenschaftenblatt vorgenommenen Auswahlen entspricht. Der Gerätekontext wird in hDC zurückgegeben.
PD_RETURNDEFAULT
0x00000400
Wenn dieses Flag festgelegt ist, zeigt die PrintDlgEx-Funktion das Eigenschaftenblatt nicht an. Stattdessen werden die Elemente hDevNames und hDevMode für DEVNAMES - und DEVMODE-Strukturen festgelegt, die für den Standarddrucker des Systems initialisiert werden. Sowohl hDevNames als auch hDevMode müssen NULL sein, andernfalls gibt PrintDlgEx einen Fehler zurück.
PD_RETURNIC
0x00000200
Ähnlich wie beim PD_RETURNDC-Flag , mit der Ausnahme, dass dieses Flag einen Informationskontext und keinen Gerätekontext zurückgibt. Wenn weder PD_RETURNDC noch PD_RETURNIC angegeben ist, ist hDC bei der Ausgabe nicht definiert.
PD_SELECTION
0x00000001
Wenn dieses Flag festgelegt ist, ist das Optionsfeld Auswahl ausgewählt. Wenn keines der flags PD_PAGENUMS, PD_SELECTION oder PD_CURRENTPAGE festgelegt ist, wird das Optionsfeld Alle ausgewählt.
PD_USEDEVMODECOPIES
0x00040000
Identisch mit PD_USEDEVMODECOPIESANDCOLLATE.
PD_USEDEVMODECOPIESANDCOLLATE
0x00040000
Dieses Flag gibt an, ob Ihre Anwendung mehrere Kopien und Sortierung unterstützt. Legen Sie dieses Flag für die Eingabe fest, um anzugeben, dass Ihre Anwendung mehrere Kopien und Sortierungen nicht unterstützt. In diesem Fall gibt der nCopies-Member der PRINTDLGEX-Struktur immer 1 zurück, und PD_COLLATE wird nie im Flags-Element festgelegt.

Wenn dieses Flag nicht festgelegt ist, ist die Anwendung für das Drucken und Sortieren mehrerer Kopien verantwortlich. In diesem Fall gibt der nCopies-Member der PRINTDLGEX-Struktur die Anzahl der Kopien an, die der Benutzer drucken möchte, und das PD_COLLATE-Flag im Flags-Element gibt an, ob der Benutzer Sortierung wünscht.

Unabhängig davon, ob dieses Flag festgelegt ist, kann eine Anwendung anhand von nCopies bestimmen und PD_COLLATE , wie viele Kopien gerendert werden sollen und ob sie sortiert gedruckt werden sollen.

Wenn dieses Flag festgelegt ist und der Druckertreiber mehrere Kopien nicht unterstützt, ist das Bearbeitungssteuerelement Kopien deaktiviert. Wenn dieses Flag festgelegt ist und der Druckertreiber die Sortierung nicht unterstützt, ist das Kontrollkästchen Sortieren deaktiviert.

Die Elemente dmCopies und dmCollate der DEVMODE-Struktur enthalten die vom Druckertreiber verwendeten Kopien und Sortierinformationen. Wenn dieses Flag festgelegt ist und der Druckertreiber mehrere Kopien unterstützt, gibt das dmCopies-Element die Anzahl der vom Benutzer angeforderten Kopien an. Wenn dieses Flag festgelegt ist und der Druckertreiber die Sortierung unterstützt, gibt der dmCollate-Member der DEVMODE-Struktur an, ob der Benutzer eine Sortierung wünscht. Wenn dieses Flag nicht festgelegt ist, gibt das dmCopies-Element immer 1 zurück, und das dmCollate-Element ist immer null.

Wenn dieses Flag in Windows-Versionen vor Windows Vista nicht von der aufrufenden Anwendung festgelegt wird und das dmCopies-Element der DEVMODE-Struktur größer als 1 ist, verwenden Sie diesen Wert für die Anzahl der Kopien. Verwenden Sie andernfalls den Wert des nCopies-Elements der PRINTDLGEX-Struktur .

PD_USELARGETEMPLATE
0x10000000
Erzwingt, dass das Eigenschaftenblatt eine große Vorlage für die Seite Allgemein verwendet. Die größere Vorlage bietet mehr Platz für Anwendungen, die eine benutzerdefinierte Vorlage für den unteren Teil der Seite Allgemein angeben.

Flags2

Art: DWORD

ExclusionFlags

Art: DWORD

Ein Satz von Bitflags, die Elemente von den Eigenschaftenseiten des Druckertreibers im Eigenschaftenblatt Drucken ausschließen können. Dieser Wert wird nur verwendet, wenn das flag PD_EXCLUSIONFLAGS im Flags-Element festgelegt ist. Ausschlussflags sollten nur verwendet werden, wenn das auszuschließende Element entweder auf der Seite Allgemein oder auf einer anwendungsdefinierte Seite im Eigenschaftenblatt Drucken enthalten ist. Dieses Element kann das folgende Flag angeben.

PD_EXCL_COPIESANDCOLLATE

Schließt die Steuerelemente Kopien und Sortieren von den Eigenschaftenseiten des Druckertreibers in einem Print-Eigenschaftenblatt aus. Dieses Flag sollte immer festgelegt werden, wenn die Anwendung die Standardsteuerelemente Kopien und Sortierung verwendet, die vom unteren Teil der Seite Allgemein des Eigenschaftenblatts Drucken bereitgestellt werden.

nPageRanges

Art: DWORD

Legen Sie bei der Eingabe diesen Member auf die anfängliche Anzahl von Seitenbereichen fest, die im lpPageRanges-Array angegeben sind. Wenn die PrintDlgEx-Funktion zurückgibt, gibt nPageRanges die Anzahl der vom Benutzer angegebenen Seitenbereiche an, die im lpPageRanges-Array gespeichert sind. Wenn das flag PD_NOPAGENUMS angegeben ist, ist dieser Wert ungültig.

nMaxPageRanges

Art: DWORD

Die Größe des lpPageRanges-Puffers in Arrayelementen. Dieser Wert gibt die maximale Anzahl von Seitenbereichen an, die im Array gespeichert werden können. Wenn das flag PD_NOPAGENUMS angegeben ist, ist dieser Wert ungültig. Wenn das flag PD_NOPAGENUMS nicht angegeben wird, muss dieser Wert größer als 0 sein.

lpPageRanges

Typ: LPPRINTPAGERANGE

Zeiger auf einen Puffer, der ein Array von PRINTPAGERANGE-Strukturen enthält. Bei der Eingabe enthält das Array die anfänglichen Seitenbereiche, die im Bearbeitungssteuerelement Seiten angezeigt werden sollen. Wenn die PrintDlgEx-Funktion zurückgibt, enthält das Array die vom Benutzer angegebenen Seitenbereiche. Wenn das flag PD_NOPAGENUMS angegeben ist, ist dieser Wert ungültig. Wenn das flag PD_NOPAGENUMS nicht angegeben ist, muss lpPageRanges ungleich NULL sein.

nMinPage

Art: DWORD

Der Mindestwert für die Seitenbereiche, die im Bearbeitungssteuerelement für Seiten angegeben sind. Wenn das flag PD_NOPAGENUMS angegeben ist, ist dieser Wert ungültig.

nMaxPage

Art: DWORD

Der maximal zulässige Wert für die Seitenbereiche, die im Bearbeitungssteuerelement für Seiten angegeben sind. Wenn das flag PD_NOPAGENUMS angegeben ist, ist dieser Wert ungültig.

nCopies

Art: DWORD

Enthält die anfängliche Anzahl von Kopien für das Kopierbearbeitungssteuerelement , wenn hDevModeNULL ist. Andernfalls enthält das dmCopies-Element der DEVMODE-Struktur den Anfangswert. Wenn PrintDlgEx zurückgibt, enthält nCopies die tatsächliche Anzahl von Kopien, die die Anwendung drucken muss. Dieser Wert hängt davon ab, ob die Anwendung oder der Druckertreiber für das Drucken mehrerer Kopien verantwortlich ist. Wenn das flag PD_USEDEVMODECOPIESANDCOLLATE im Flags-Element festgelegt ist, ist nCopies bei der Rückgabe immer 1, und der Druckertreiber ist für das Drucken mehrerer Kopien verantwortlich. Wenn das Flag nicht festgelegt ist, ist die Anwendung für das Drucken der von nCopies angegebenen Anzahl von Kopien verantwortlich. Weitere Informationen finden Sie in der Beschreibung des flags PD_USEDEVMODECOPIESANDCOLLATE .

hInstance

Typ: HINSTANCE

Wenn das flag PD_ENABLEPRINTTEMPLATE im Flags-Element festgelegt ist, ist hInstance ein Handle für die Anwendung oder das Modul instance, das die Dialogfeldvorlage enthält, die vom lpPrintTemplateName-Element benannt ist. Wenn das flag PD_ENABLEPRINTTEMPLATEHANDLE im Flags-Element festgelegt ist, ist hInstance ein Handle für ein Speicherobjekt, das eine Dialogfeldvorlage enthält. Wenn keines der Vorlagenflags im Flags-Member festgelegt ist, sollte hInstanceNULL sein.

lpPrintTemplateName

Typ: LPCTSTR

Der Name der Dialogfeldvorlagenressource in dem Modul, das vom hInstance-Element identifiziert wird. Diese Vorlage ersetzt die Standarddialogfeldvorlage im unteren Teil der Seite Allgemein . Die Standardvorlage enthält Steuerelemente, die denen des Dialogfelds Drucken ähneln. Dieser Member wird ignoriert, es sei denn, das flag PD_ENABLEPRINTTEMPLATE ist im Flags-Element festgelegt.

lpCallback

Typ: LPUNKNOWN

Ein Zeiger auf ein anwendungsdefiniertes Rückrufobjekt.

Das -Objekt sollte die IPrintDialogCallback-Klasse enthalten, um Nachrichten für das untergeordnete Dialogfeld im unteren Teil der Seite Allgemein zu empfangen.

Das Rückrufobjekt sollte auch die IObjectWithSite-Klasse enthalten, um einen Zeiger auf die IPrintDialogServices-Schnittstelle zu empfangen. Die PrintDlgEx-Funktion ruft IUnknown::QueryInterface für das Rückrufobjekt sowohl für IID_IPrintDialogCallback als auch für IID_IObjectWithSite auf, um zu bestimmen, welche Schnittstellen unterstützt werden.

Wenn Sie keine der Rückrufinformationen abrufen möchten, legen Sie lpCallback auf NULL fest.

nPropertyPages

Art: DWORD

Die Anzahl der Eigenschaftenseitenhandles im lphPropertyPages-Array .

lphPropertyPages

Typ: HPROPSHEETPAGE*

Enthält ein Array von Eigenschaftenseitenhandles, die dem Print-Eigenschaftenblatt hinzugefügt werden sollen. Die zusätzlichen Eigenschaftenseiten folgen der Seite Allgemein . Verwenden Sie die CreatePropertySheetPage-Funktion , um diese zusätzlichen Seiten zu erstellen. Wenn die PrintDlgEx-Funktion zurückgibt, wurden alle HPROPSHEETPAGE-Handles im lphPropertyPages-Array zerstört. Wenn nPropertyPages null ist, sollte lphPropertyPagesNULL sein.

nStartPage

Art: DWORD

Die Eigenschaftenseite, die zunächst angezeigt wird. Um die Seite Allgemein anzuzeigen, geben Sie START_PAGE_GENERAL an. Geben Sie andernfalls den nullbasierten Index einer Eigenschaftenseite in dem Array an, das im lphPropertyPages-Element angegeben ist. Aus Gründen der Konsistenz wird empfohlen, das Eigenschaftenblatt immer auf der Seite Allgemein zu starten.

dwResultAction

Art: DWORD

Legen Sie bei der Eingabe diesen Member auf 0 fest. Wenn die PrintDlgEx-Funktion S_OK zurückgibt, enthält dwResultAction das Ergebnis des Dialogfelds. Wenn PrintDlgEx einen Fehler zurückgibt, sollte dieser Member ignoriert werden. Der dwResultAction-Member kann einer der folgenden Werte sein.

PD_RESULT_APPLY

Der Benutzer hat auf die Schaltfläche Anwenden und später auf die Schaltfläche Abbrechen geklickt. Dies gibt an, dass der Benutzer die im Eigenschaftenblatt vorgenommenen Änderungen anwenden möchte, aber noch nicht drucken möchte. Die PRINTDLGEX-Struktur enthält die Informationen, die der Benutzer zum Zeitpunkt des Klickens auf die Schaltfläche Anwenden angegeben hat.

PD_RESULT_CANCEL

Der Benutzer hat auf die Schaltfläche Abbrechen geklickt. Die Informationen in der PRINTDLGEX-Struktur bleiben unverändert.

PD_RESULT_PRINT

Der Benutzer hat auf die Schaltfläche Drucken geklickt. Die PRINTDLGEX-Struktur enthält die vom Benutzer angegebenen Informationen.

Bemerkungen

Wenn sowohl hDevMode als auch hDevNamesNULL sind, initialisiert PrintDlgEx das Eigenschaftenblatt mit dem aktuellen Standarddrucker. Um das Eigenschaftenblatt für einen anderen Drucker zu initialisieren, verwenden Sie das wDeviceOffset-Element der DEVNAMES-Struktur , um den Namen des Druckers anzugeben.

Beachten Sie, dass das dmDeviceName-Element der DEVMODE-Struktur auch einen Druckernamen angibt. DmDeviceName ist jedoch auf 32 Zeichen beschränkt, und der Name wDeviceOffset ist nicht. Wenn die Namen wDeviceOffset und dmDeviceName nicht identisch sind, initialisiert PrintDlgEx das Eigenschaftenblatt mit dem von wDeviceOffset angegebenen Drucker.

Wenn das PD_RETURNDEFAULT-Flag festgelegt ist und sowohl hDevMode als auch hDevNamesNULL sind, verwendet PrintDlgEx die Mitglieder hDevNames und hDevMode , um Informationen zum aktuellen Standarddrucker zurückzugeben, ohne das Dialogfeld anzuzeigen.

Während der Ausführung von PrintDlgEx enthalten die DEVMODE - und DEVNAMES-Strukturen , die Sie in der PRINTDLGEX-Struktur angegeben haben, möglicherweise nicht immer aktuelle Daten. Aus diesem Grund sollten anwendungsspezifische Eigenschaftenseiten sowie IPrintDialogCallback-Routinen für die erste Seite die IPrintDialogServices-Schnittstelle verwenden, um Informationen zum Zustand des aktuellen Druckers abzurufen.

Hinweis

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

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Kopfzeile commdlg.h (einschließlich Windows.h)

Weitere Informationen

Allgemeine Dialogfeldbibliothek

Konzept

DEVMODE

DEVNAMES

IPrintDialogCallback

IPrintDialogServices

PrintDlgEx

Referenz