Freigeben über


ORDeleteKey-Funktion

Löscht einen Unterschlüssel und seine Werte aus einer Offlineregistrierungsstruktur.

Syntax

DWORD ORDeleteKey(
  _In_     ORHKEY Handle,
  _In_opt_ PCWSTR lpSubKey
);

Parameter

Handle [in]

Ein Handle für einen geöffneten Registrierungsschlüssel in einer Offlineregistrierungsstruktur. Dieses Handle wird von der ORCreateKey - oder OROpenKey-Funktion zurückgegeben.

lpSubKey [in, optional]

Der Name des zu löschenden Schlüssels. Es muss ein Unterschlüssel des Schlüssels sein, der von Handle identifiziert wird, kann aber keine Unterschlüssel enthalten.

Wenn der Unterschlüssel nicht vorhanden ist, gibt die Funktion ERROR_NOT_FOUND zurück.

Wenn dieser Parameter NULL ist, löscht die Funktion den durch den Handle-Parameter angegebenen Schlüssel. Wenn der durch den Handle-Parameter angegebene Schlüssel der Stammschlüssel der Struktur ist, gibt die Funktion ERROR_INVALID_PARAMETER zurück.

Bei Schlüsselnamen wird die Groß-/Kleinschreibung nicht beachtet.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird der Rückgabewert ERROR_SUCCESS.

Wenn die Funktion fehlschlägt, ist der Rückgabewert ein in Winerror.h definierter Fehlercode ungleich null. Sie können die FormatMessage-Funktion mit dem flag FORMAT_MESSAGE_FROM_SYSTEM verwenden, um eine generische Beschreibung des Fehlers abzurufen. Mögliche Fehlercodes sind:

  • Wenn der angegebene Unterschlüssel nicht vorhanden ist, gibt die Funktion ERROR_FILE_NOT_FOUND zurück.
  • Wenn der angegebene Unterschlüssel der Stammschlüssel der Registrierungsstruktur ist, gibt die Funktion ERROR_INVALID_PARAMETER zurück.
  • Wenn der angegebene Unterschlüssel Über Unterschlüssel verfügt, gibt die Funktion ERROR_KEY_HAS_CHILDREN zurück.

Bemerkungen

Wenn der angegebene Registrierungsschlüssel vorhanden ist, wird er als gelöscht markiert. Ein gelöschter Schlüssel wird erst entfernt, wenn das letzte Handle für ihn geschlossen wurde.

Der zu löschende Schlüssel darf keine Unterschlüssel aufweisen. Um einen Schlüssel und alle seine Unterschlüssel zu löschen, verwenden Sie die OREnumKey-Funktion , um die Unterschlüssel aufzulisten und einzeln zu löschen.

Nur die ORCloseKey-Funktion kann für einen gelöschten Schlüssel aufgerufen werden. Alle anderen Offlineregistrierungsvorgänge schlagen fehl. Wenn der gelöschte Schlüssel explizit durch Aufrufen von ORCreateKey erstellt wurde, werden dem Schlüssel zugeordnete Ressourcen freigegeben, wenn das letzte Handle für den gelöschten Schlüssel geschlossen wird.

Anforderungen

Anforderung Wert
Verteilbare Komponente
Windows-Offlineregistrierungsbibliothek, Version 1.0 oder höher
Header
Offreg.h
DLL
Offreg.dll

Siehe auch

ORCloseKey

ORCreateKey

OREnumKey

OROpenKey