Index: base/win/registry.h |
diff --git a/base/win/registry.h b/base/win/registry.h |
index 2ef759bf4cba5724b0caa2c1ab77f60f76f1aebc..69cc6aac78514b41bf907fc7b0a46f1dc583d761 100644 |
--- a/base/win/registry.h |
+++ b/base/win/registry.h |
@@ -71,6 +71,9 @@ class BASE_EXPORT RegKey { |
// it. |
LONG DeleteKey(const wchar_t* name); |
+ // Delete an empty subkey. If the subkey has subkeys then this will fail. |
grt (UTC plus 2)
2014/05/20 15:28:52
nit: Delete -> Deletes
Will Harris
2014/05/20 17:03:34
Done.
|
+ LONG DeleteEmptyKey(const wchar_t* name); |
+ |
// Deletes a single value within the key. |
LONG DeleteValue(const wchar_t* name); |
@@ -132,8 +135,20 @@ class BASE_EXPORT RegKey { |
HKEY Handle() const { return key_; } |
private: |
+ // Calls RegDeleteKeyEx on supported platforms, alternatively falls back to |
+ // RegDeleteKey. |
+ static LONG RegDeleteKeyExWrapper(HKEY hKey, |
+ const wchar_t* lpSubKey, |
+ REGSAM samDesired, |
+ DWORD Reserved); |
+ |
+ // Recursively deletes a key and all of its subkeys. |
+ static LONG RegDelRecurse(HKEY root_key, |
+ const std::wstring& name, |
+ REGSAM access); |
HKEY key_; // The registry key being iterated. |
HANDLE watch_event_; |
+ REGSAM wow64access_; |
DISALLOW_COPY_AND_ASSIGN(RegKey); |
}; |