Struttura DOCUMENTPROPERTYHEADER (winddiui.h)
La struttura DOCUMENTPROPERTYHEADER viene usata come parametro di input per la funzione DrvDocumentPropertySheets di una DLL dell'interfaccia della stampante.
Sintassi
typedef struct _DOCUMENTPROPERTYHEADER {
WORD cbSize;
WORD Reserved;
HANDLE hPrinter;
LPTSTR pszPrinterName;
PDEVMODE pdmIn;
PDEVMODE pdmOut;
DWORD cbOut;
DWORD fMode;
} DOCUMENTPROPERTYHEADER, *PDOCUMENTPROPERTYHEADER;
Members
cbSize
Dimensioni, in byte, della struttura DOCUMENTPROPERTYHEADER.
Reserved
Riservato. Deve essere zero.
hPrinter
Handle stampante.
pszPrinterName
Puntatore a una stringa con terminazione NULL che rappresenta il nome della stampante.
pdmIn
Puntatore a una struttura DEVMODEW di input che la funzione DrvDocumentPropertySheets deve copiare nella struttura DEVMODEW interna della DLL dell'interfaccia della stampante (prima della visualizzazione del foglio delle proprietà, se applicabile). Se DM_IN_BUFFER o DM_MODIFY non è impostato in fMode, questo puntatore è NULL.
pdmOut
Puntatore a una struttura DEVMODEW di output in cui la funzione DrvDocumentPropertySheets deve copiare il contenuto interno della DLL dell'interfaccia della stampante (dopo la visualizzazione del foglio delle proprietà, se applicabile). Se DM_OUT_BUFFER o DM_COPY non è impostato in fMode, questo puntatore è NULL.
cbOut
Specifica le dimensioni, in byte, del buffer a cui punta pdmOut . Per ulteriori informazioni, vedere la sezione Osservazioni successiva.
fMode
Uno o più flag di bit elencati nella tabella seguente. I flag sono definiti nei file di intestazione Wingdi.h e Winddiui.h.
Flag | Definizione |
---|---|
Nessun set di flag, ovvero fMode è 0. | La funzione DrvDocumentPropertySheets deve restituire le dimensioni, in byte, della struttura DEVMODEW, inclusi tutti i membri pubblici e privati, nel membro cbOut . |
DM_ADVANCED | Se impostato, la funzione DrvDocumentPropertySheets deve creare solo la pagina Del documento avanzato. Se non è impostato, la funzione DrvDocumentPropertySheets deve creare sia le pagine del documento PageSetup che Avanzate. Vedere la descrizione del membro pDlgPage della struttura COMPROPSHEETUI . |
DM_IN_BUFFER o DM_MODIFY | Il chiamante ha fornito un puntatore della struttura DEVMODEW in pdmIn e la funzione DrvDocumentPropertySheets deve aggiornare la struttura DEVMODEW interna per riflettere il contenuto dell'oggetto DEVMODEW fornito. |
DM_IN_PROMPT o DM_PROMPT | La funzione DrvDocumentPropertySheets deve creare le pagine del foglio delle proprietà. Questo flag non viene mai impostato se il parametro pPSUIInfo della funzione DrvDocumentPropertySheets è NULL. |
DM_NOPERMISSION | La DLL dell'interfaccia della stampante _CPSUICALLBACK tipizzata non deve consentire all'utente di modificare le proprietà nelle pagine del foglio delle proprietà visualizzate. |
DM_OUT_BUFFER o DM_COPY | Il chiamante ha fornito un puntatore della struttura DEVMODEW in pdmOut e la funzione DrvDocumentPropertySheets deve copiare il contenuto della struttura DEVMODEW interna nell'oggetto DEVMODEW fornito. |
DM_PROMPT_NON_MODAL | La funzione DrvDocumentPropertySheets deve creare le pagine del foglio delle proprietà e avviare un'interfaccia utente non modale. Questo flag non viene mai impostato se il parametro pPSUIInfo della funzione DrvDocumentPropertySheets è NULL. |
DM_USER_DEFAULT | Non usato. |
DM_OUT_DEFAULT o DM_UPDATE | Non usato. |
Commenti
Il valore di input nel membro cbOut non è necessariamente uguale alla dimensione del buffer a cui punta il membro pdmOut . Ad esempio, quando il parametro pPSUInfo della funzione DrvDocumentPropertySheets è NULL e se il membro fMode della struttura DOCUMENTPROPERTYHEADER è zero o il membro pdmOut della stessa struttura è NULL, un driver deve scrivere le dimensioni totali della struttura DEVMODEW della stampante (inclusi i membri della struttura pubblica e privata) nel membro cbOut . In tal caso, un driver deve trattare il membro cbOut come membro di sola scrittura. Pertanto, il driver non deve usare il membro cbOut come dimensione del buffer a cui punta il membro pdmOut se la funzione DrvDocumentPropertySheets è stata chiamata. L'esempio "plotter" fornito con Windows Driver Kit (WDK) illustra come usare correttamente il membro cbOut .
Requisiti
Requisito | Valore |
---|---|
Intestazione | winddiui.h (include Winddiui.h) |