DrvDocumentPropertySheets-Funktion (winddiui.h)
Die DrvDocumentPropertySheets-Funktion einer Druckerschnittstellen-DLL ist für das Erstellen von Eigenschaftenblattseiten verantwortlich, die die Eigenschaften eines Druckdokuments beschreiben.
Syntax
LONG DrvDocumentPropertySheets(
[in, optional] PPROPSHEETUI_INFO pPSUIInfo,
LPARAM lParam
);
Parameter
[in, optional] pPSUIInfo
Vom Aufrufer bereitgestellter Zeiger auf eine PROPSHEETUI_INFO-Struktur . Kann NULL sein (siehe folgenden Abschnitt "Hinweise").
lParam
Vom Aufrufer bereitgestellter ganzzahliger Wert, der vom Inhalt des Reason-Members der PROPSHEETUI_INFO-Struktur abhängig ist, wie in der folgenden Tabelle aufgeführt.
Grundwert | Definition von lParam |
---|---|
PROPSHEETUI_REASON_INIT | Zeiger auf eine DOCUMENTPROPERTYHEADER-Struktur . |
Alle anderen Grundwerte | Siehe die Beschreibung des lParam-Parameters für den PFNPROPSHEETUI-Funktionstyp . (Die Adresse der DOCUMENTPROPERTYHEADER-Struktur ist im lParamInit-Element der PROPSHEETUI_INFO-Struktur enthalten.) |
Rückgabewert
Wenn pPSUIInfoNULL ist und entweder lParam ->fMode null oder lParam ->pdmOutNULL ist, sollte diese Funktion die Größe der DEVMODEW-Struktur des Druckers in Bytes zurückgeben. Andernfalls entspricht der Rückgabewert der Funktion dem im Abschnitt ReturnValue des Funktionstyps PFNPROPSHEETUI beschriebenen Wert. Weitere Informationen finden Sie im Abschnitt mit Hinweisen.
Bemerkungen
Alle Druckerschnittstellen-DLLs müssen eine DrvDocumentPropertySheets-Funktion bereitstellen, die mit dem Funktionstyp PFNPROPSHEETUI definiert wird. Der Zweck der Funktion besteht darin, die von CPSUI bereitgestellte ComPropSheet-Funktion aufzurufen, um Eigenschaftenblattseiten mit benutzerveränderlichen Eigenschaften für Druckdokumente anzugeben.
Wenn der für den pPSUIInfo-Parameter empfangene Wert nicht NULL ist, ruft der NT-basierte Betriebssystemdruckspooler die Funktion indirekt über CPSUI auf. Es gelten die folgenden Regeln:
Die Funktion sollte Vorgänge ausführen, die für den Funktionstyp PFNPROPSHEETUI beschrieben sind.
Flags im fMode-Member der DOCUMENTPROPERTYHEADER-Struktur geben an, welche Eigenschaftenblattseiten angezeigt werden sollen und ob der Benutzer die Eigenschaften eines Dokuments ändern darf. Die einzigen Flags, die festgelegt werden können, sind DM_IN_PROMPT (oder DM_PROMPT), DM_ADVANCED, DM_NOPERMISSION und DM_OUT_BUFFER (oder DM_COPY).
Wenn der für den pPSUIInfo-Parameter empfangene Wert NULL ist, ruft der Druckspooler die Funktion direkt auf, ohne CPSUI zu durchlaufen. In diesem Fall enthält der lParam-Parameter die Adresse einer DOCUMENTPROPERTYHEADER-Struktur, und es gelten die folgenden Regeln:
Wenn das fMode-Element der DOCUMENTPROPERTYHEADER-Struktur 0 ist oder das pdmOut-Element derselben Struktur NULL ist, sollte die Funktion nur die Gesamtgröße der DEVMODEW-Struktur des Druckers zurückgeben, einschließlich öffentlicher und privater Strukturmitglieder, im cbOut-Member der DOCUMENTPROPERTYHEADER-Struktur.
Wenn das fMode-Element der DOCUMENTPROPERTYHEADER-Struktur nicht 0 ist, sollte die Funktion die durch die fMode-Flags angegebenen Vorgänge ausführen. Die einzigen Flags, die festgelegt werden können, sind DM_IN_BUFFER (oder DM_MODIFY) und DM_OUT_BUFFER (oder DM_COPY).
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | winddiui.h (include Winddiui.h) |