Função EngSetPrinterData (winddi.h)

A função EngSetPrinterData está obsoleta no Windows 2000 e posterior.

Em versões anteriores do Windows EngSetPrinterData define os dados de configuração da impressora especificada.

Sintaxe

ENGAPI DWORD EngSetPrinterData(
  [in] HANDLE hPrinter,
  [in] LPWSTR pType,
  [in] DWORD  dwType,
  [in] LPBYTE lpbPrinterData,
  [in] DWORD  cjPrinterData
);

Parâmetros

[in] hPrinter

Identificador para a impressora para a qual os dados de configuração devem ser definidos. Esse é o identificador passado como o parâmetro hDriver de DrvEnablePDEV. Veja os Comentários.

[in] pType

Ponteiro para uma cadeia de caracteres terminada em nulo que identifica os dados a serem definidos.

[in] dwType

É um sinalizador que especifica o tipo de informação a ser definido. Esse parâmetro pode usar um dos valores a seguir:

Valor Significado
REG_BINARY Dados binários em qualquer formulário.
REG_DWORD Um número de 32 bits.
REG_DWORD_BIG_ENDIAN Um número de 32 bits no formato big-endian, o que significa que o byte mais significativo de uma palavra é o byte de baixa ordem.
REG_DWORD_LITTLE_ENDIAN Um número de 32 bits no formato little-endian (o mesmo que REG_DWORD), o que significa que o byte mais significativo de uma palavra é o byte de alta ordem
REG_EXPAND_SZ Uma cadeia de caracteres terminada em nulo que contém referências não explicadas a variáveis de ambiente (por exemplo, "%PATH%"). Ela será uma cadeia de caracteres Unicode ou ANSI, dependendo se as funções Unicode ou ANSI são usadas.
REG_LINK Um link simbólico Unicode.
REG_MULTI_SZ Uma matriz de cadeias de caracteres terminada em nulo, terminada por dois caracteres nulos.
REG_NONE Nenhum tipo de valor definido.
REG_RESOURCE_LIST Uma lista de recursos do driver de dispositivo.
REG_SZ Uma cadeia de caracteres terminada em nulo. Ela será uma cadeia de caracteres Unicode ou ANSI, dependendo se você usar as funções Unicode ou ANSI.

[in] lpbPrinterData

Ponteiro para os dados de configuração da impressora que devem ser definidos. O tipo de dados apontados é determinado por dwType.

[in] cjPrinterData

Especifica o tamanho, em bytes, de lpbPrinterData.

Valor retornado

EngSetPrinterData retorna a última mensagem de erro registrada.

Comentários

A partir do Microsoft Windows 2000, essa função está obsoleta. Os identificadores usados em chamadas para as funções EngSetPrinterData e DrvEnablePDEV têm direitos de acesso diferentes; portanto, essas funções não funcionam mais juntas. O parâmetro hDriver usado em chamadas para a função DrvEnablePDEV é aberto com o PRINTER_ACCESS_USE direito de acesso. Por outro lado, o parâmetro hPrinter usado em chamadas para a função EngSetPrinterData deve ter sido aberto com o PRINTER_ALL_ACCESS direito de acesso. Como resultado, não há como um driver de impressora no modo kernel (o único tipo de driver de impressora que pode chamar EngSetPrinterData) usar EngSetPrinterData para gravar informações sobre uma impressora no registro.

Para obter mais informações sobre direitos de acesso à impressora, consulte a estrutura de PRINTER_DEFAULTS (descrita na documentação do SDK do Windows).

Requisitos

   
Cliente mínimo com suporte Disponível no Windows 2000 e versões posteriores dos sistemas operacionais Windows.
Plataforma de Destino Universal
Cabeçalho winddi.h (inclua Winddi.h)
Biblioteca Win32k.lib
DLL Win32k.sys

Confira também

DrvEnablePDEV

EngGetPrinterData