Estrutura MONITORREG (winsplp.h)

A estrutura MONITORREG fornece monitores de impressão com o endereço das funções do Registro a serem usadas em vez das funções da API do Registro Win32.

Sintaxe

typedef struct _MONITORREG {
  DWORD cbSize;
  LONG()(HKEYMONITOR hcKey,LPCTSTR pszSubKey,DWORD dwOptions,REGSAM samDesired,PSECURITY_ATTRIBUTES pSecurityAttributes,HKEYMONITOR *phckResult,PDWORD pdwDisposition,HANDLE hSpooler) * fpCreateKey;
  LONG()(HKEYMONITOR hcKey,LPCTSTR pszSubKey,REGSAM samDesired,HKEYMONITOR *phkResult,HANDLE hSpooler) * fpOpenKey;
  LONG( )(HKEYMONITOR hcKey,HANDLE hSpooler) *fpCloseKey;
  LONG( )(HKEYMONITOR hcKey,LPCTSTR pszSubKey,HANDLE hSpooler) *fpDeleteKey;
  LONG( )(HKEYMONITOR hcKey,DWORD dwIndex,LPTSTR pszName,PDWORD pcchName,PFILETIME pftLastWriteTime,HANDLE hSpooler) *fpEnumKey;
  LONG( )(HKEYMONITOR hcKey,PDWORD pcSubKeys,PDWORD pcbKey,PDWORD pcValues,PDWORD pcbValue,PDWORD pcbData,PDWORD pcbSecurityDescriptor,PFILETIME pftLastWriteTime,HANDLE hSpooler) *fpQueryInfoKey;
  LONG()(HKEYMONITOR hcKey,LPCTSTR pszValue,DWORD dwType, const BYTE *pData,DWORD cbData,HANDLE hSpooler) * fpSetValue;
  LONG( )(HKEYMONITOR hcKey,LPCTSTR pszValue,HANDLE hSpooler) *fpDeleteValue;
  LONG( )(HKEYMONITOR hcKey,DWORD dwIndex,LPTSTR pszValue,PDWORD pcbValue,PDWORD pTyp,PBYTE pData,PDWORD pcbData,HANDLE hSpooler) *fpEnumValue;
  LONG( )(HKEYMONITOR hcKey,LPCTSTR pszValue,PDWORD pType,PBYTE pData,PDWORD pcbData,HANDLE hSpooler) *fpQueryValue;
} MONITORREG, *PMONITORREG;

Membros

cbSize

Tamanho, em bytes, da estrutura MONITORREG .

fpCreateKey

Ponteiro para uma função de registro do spooler CreateKey .

fpOpenKey

Ponteiro para uma função de registro do spooler OpenKey .

fpCloseKey

Ponteiro para uma função de registro do spooler CloseKey .

fpDeleteKey

Ponteiro para uma função de registro do spooler DeleteKey .

fpEnumKey

Ponteiro para uma função de registro do spooler EnumKey .

fpQueryInfoKey

Ponteiro para uma função de registro do spooler QueryInfoKey .

fpSetValue

Ponteiro para uma função de registro do spooler SetValue .

fpDeleteValue

Ponteiro para uma função de registro do spooler DeleteValue .

fpEnumValue

Ponteiro para uma função de registro do spooler EnumValue .

fpQueryValue

Ponteiro para uma função de registro do spooler QueryValue .

Comentários

O endereço da estrutura MONITORREG é fornecido em uma estrutura MONITORINIT , que é passada para a função InitializePrintMonitor2 de um monitor de impressão.

Ao armazenar informações de configuração de porta, os monitores de impressão não devem chamar explicitamente a API do Registro Win32 ou a API do Registro de cluster.

O spooler contém uma cópia do registro. Não use a API do Registro Win32 para obter o valor realmente usado pelo spooler. Use as funções de registro do spooler listadas abaixo cujos ponteiros estão contidos na estrutura MONITORREG .

Em vez disso, eles devem chamar funções de registro de spooler equivalentes. A estrutura MONITORREG fornece os endereços dessas funções. A tabela a seguir lista cada função de registro do spooler e sua função de registro de cluster equivalente.

Função de registro do Spooler Função de registro de cluster equivalente
Createkey ClusterRegCreateKey
OpenKey ClusterRegOpenKey
CloseKey ClusterRegCloseKey
DeleteKey ClusterRegDeleteKey
EnumKey ClusterRegEnumKey
QueryInfoKey ClusterRegQueryInfoKey
SetValue ClusterRegSetValue
Deletevalue ClusterRegDeleteValue
Enumvalue ClusterRegEnumValue
QueryValue ClusterRegQueryValue

Os parâmetros de entrada e saída para essas funções spooler correspondem aos parâmetros das funções de registro de cluster equivalentes no cabeçalho clusapi.h , com as seguintes exceções:

  • Cada função de registro do spooler requer um parâmetro de entrada hSpooler . Esse é o identificador de spooler recebido na estrutura MONITORINIT .

  • As funções de registro do spooler usam tipos de parâmetro HANDLE e PHANDLE em vez dos tipos HKEY e PHKEY usados pelas funções de registro de cluster. Os monitores recebem o identificador do local do registro raiz no membro hckRegistryRoot da estrutura MONITORINIT .

Requisitos

Requisito Valor
Cabeçalho winsplp.h (inclua Winsplp.h)

Confira também

InitializePrintMonitor2

MONITORINIT