MONITORREG-Struktur (winsplp.h)

Die MONITORREG-Struktur stellt Druckmonitore mit der Adresse der Registrierungsfunktionen bereit, die anstelle von Win32-Registrierungs-API-Funktionen verwendet werden sollen.

Syntax

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;

Member

cbSize

Größe der MONITORREG-Struktur in Bytes.

fpCreateKey

Zeiger auf eine CreateKey-Spoolerregistrierungsfunktion.

fpOpenKey

Zeiger auf eine OpenKey-Spoolerregistrierungsfunktion.

fpCloseKey

Zeiger auf eine CloseKey-Spoolerregistrierungsfunktion.

fpDeleteKey

Zeiger auf eine DeleteKey-Spoolerregistrierungsfunktion.

fpEnumKey

Zeiger auf eine EnumKey-Spoolerregistrierungsfunktion.

fpQueryInfoKey

Zeiger auf eine QueryInfoKey-Spoolerregistrierungsfunktion.

fpSetValue

Zeiger auf eine SetValue-Spoolerregistrierungsfunktion.

fpDeleteValue

Zeiger auf eine DeleteValue-Spoolerregistrierungsfunktion.

fpEnumValue

Zeiger auf eine EnumValue-Spoolerregistrierungsfunktion.

fpQueryValue

Zeiger auf eine QueryValue-Spoolerregistrierungsfunktion.

Hinweise

Die Adresse der MONITORREG-Struktur wird in einer MONITORINIT-Struktur angegeben, die an die InitializePrintMonitor2-Funktion eines Druckmonitors übergeben wird.

Beim Speichern von Portkonfigurationsinformationen dürfen Druckmonitore weder die Win32-Registrierungs-API noch die Clusterregistrierungs-API explizit aufrufen.

Der Spooler enthält eine Kopie der Registrierung. Verwenden Sie nicht die Win32-Registrierungs-API, um den tatsächlich vom Spooler verwendeten Wert abzurufen. Verwenden Sie die unten aufgeführten Spoolerregistrierungsfunktionen, deren Zeiger in der MONITORREG-Struktur enthalten sind.

Stattdessen müssen sie entsprechende Spoolerregistrierungsfunktionen aufrufen. Die MONITORREG-Struktur stellt die Adressen dieser Funktionen bereit. In der folgenden Tabelle sind jede Spoolerregistrierungsfunktion und ihre entsprechende Clusterregistrierungsfunktion aufgeführt.

Spoolerregistrierungsfunktion Entsprechende Clusterregistrierungsfunktion
CreateKey ClusterRegCreateKey
OpenKey ClusterRegOpenKey
CloseKey ClusterRegCloseKey
DeleteKey ClusterRegDeleteKey
EnumKey ClusterRegEnumKey
QueryInfoKey ClusterRegQueryInfoKey
SetValue ClusterRegSetValue
DeleteValue ClusterRegDeleteValue
EnumValue ClusterRegEnumValue
QueryValue ClusterRegQueryValue

Eingabe- und Ausgabeparameter für diese Spoolerfunktionen entsprechen den Parametern der entsprechenden Clusterregistrierungsfunktionen im Clusapi.h-Header mit den folgenden Ausnahmen:

  • Jede Spoolerregistrierungsfunktion erfordert einen hSpooler-Eingabeparameter . Dies ist das Spoolerhandle, das in der MONITORINIT-Struktur empfangen wird.

  • Die Spoolerregistrierungsfunktionen verwenden handle- und PHANDLE-Parametertypen anstelle der HKEY- und PHKEY-Typen, die von den Clusterregistrierungsfunktionen verwendet werden. Monitore erhalten das Handle des Stammregistrierungsspeicherorts im hckRegistryRoot-Member der MONITORINIT-Struktur .

Anforderungen

Anforderung Wert
Header winsplp.h (einschließlich Winsplp.h)

Weitere Informationen

InitializePrintMonitor2

MONITORINIT