Estrutura DOCUMENTPROPERTYHEADER (winddiui.h)
A estrutura DOCUMENTPROPERTYHEADER é usada como um parâmetro de entrada para a função DrvDocumentPropertySheets de uma interface de impressora.
Sintaxe
typedef struct _DOCUMENTPROPERTYHEADER {
WORD cbSize;
WORD Reserved;
HANDLE hPrinter;
LPTSTR pszPrinterName;
PDEVMODE pdmIn;
PDEVMODE pdmOut;
DWORD cbOut;
DWORD fMode;
} DOCUMENTPROPERTYHEADER, *PDOCUMENTPROPERTYHEADER;
Membros
cbSize
Tamanho, em bytes, da estrutura DOCUMENTPROPERTYHEADER.
Reserved
Reservado. Deve ser zero.
hPrinter
Identificador da impressora.
pszPrinterName
Ponteiro para uma cadeia de caracteres terminada em NULL que representa o nome da impressora.
pdmIn
Ponteiro para uma estrutura DEVMODEW de entrada que a função DrvDocumentPropertySheets deve copiar para a estrutura DEVMODEW interna da DLL da interface da impressora (antes que a folha de propriedades seja exibida, se aplicável). Se DM_IN_BUFFER ou DM_MODIFY não estiver definido em fMode, esse ponteiro será NULL.
pdmOut
Ponteiro para uma estrutura DEVMODEW de saída na qual a função DrvDocumentPropertySheets deve copiar o conteúdo DEVMODEW interno da DLL da interface da impressora (depois que a folha de propriedades tiver sido exibida, se aplicável). Se DM_OUT_BUFFER ou DM_COPY não estiver definido em fMode, esse ponteiro será NULL.
cbOut
Especifica o tamanho, em bytes, do buffer para o qual pdmOut aponta. Para obter mais informações, consulte a seção Comentários a seguir.
fMode
Um ou mais dos sinalizadores de bit listados na tabela a seguir. (Os sinalizadores são definidos nos arquivos de cabeçalho Wingdi.h e Winddiui.h.)
Sinalizador | Definição |
---|---|
Nenhum conjunto de sinalizadores (ou seja, fMode é 0). | A função DrvDocumentPropertySheets deve retornar o tamanho, em bytes, de sua estrutura DEVMODEW, incluindo todos os membros públicos e privados, no membro cbOut . |
DM_ADVANCED | Se definida, a função DrvDocumentPropertySheets só deverá criar a página Documento avançado. Se não estiver definida, a função DrvDocumentPropertySheets deverá criar as páginas de documento PageSetup e Advanced. (Consulte a descrição do membro pDlgPage da estrutura COMPROPSHEETUI .) |
DM_IN_BUFFER ou DM_MODIFY | O chamador forneceu um ponteiro de estrutura DEVMODEW em pdmIn e a função DrvDocumentPropertySheets deve atualizar sua estrutura DEVMODEW interna para refletir o conteúdo do DEVMODEW fornecido. |
DM_IN_PROMPT ou DM_PROMPT | A função DrvDocumentPropertySheets deve criar suas páginas de folha de propriedades. (Esse sinalizador nunca será definido se o parâmetro pPSUIInfo da função DrvDocumentPropertySheets for NULL.) |
DM_NOPERMISSION | O retorno de chamada do tipo _CPSUICALLBACK da interface da impressora não deve permitir que o usuário modifique as propriedades nas páginas da folha de propriedades exibidas. |
DM_OUT_BUFFER ou DM_COPY | O chamador forneceu um ponteiro de estrutura DEVMODEW no pdmOut e a função DrvDocumentPropertySheets deve copiar o conteúdo de sua estrutura DEVMODEW interna para o DEVMODEW fornecido. |
DM_PROMPT_NON_MODAL | A função DrvDocumentPropertySheets deve criar suas páginas de folha de propriedades e iniciar uma interface do usuário não modal. (Esse sinalizador nunca será definido se o parâmetro pPSUIInfo da função DrvDocumentPropertySheets for NULL.) |
DM_USER_DEFAULT | Não usado. |
DM_OUT_DEFAULT ou DM_UPDATE | Não usado. |
Comentários
O valor de entrada no membro cbOut não é necessariamente igual ao tamanho do buffer apontado pelo membro pdmOut . Por exemplo, quando o parâmetro pPSUInfo da função DrvDocumentPropertySheets for NULL e se o membro fMode da estrutura DOCUMENTPROPERTYHEADER for zero ou o membro pdmOut da mesma estrutura for NULL, um driver deverá gravar o tamanho total da estrutura DEVMODEW da impressora (incluindo os membros da estrutura pública e privada) no membro cbOut . Nesse caso, um driver deve tratar o membro cbOut como um membro "somente gravação". Portanto, o driver não deve usar o membro cbOut como o tamanho do buffer apontado pelo membro pdmOut se a função DrvDocumentPropertySheets tiver sido chamada. O exemplo de "plotador" fornecido com o WDK (Kit de Driver do Windows) demonstra como usar o membro cbOut corretamente.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | winddiui.h (inclua Winddiui.h) |