public NativeResultCode OpenKey(uint hKey, string subKeyName, out uint hSubKey) { var request = new RegistryRequest { Handle = hKey }; var registry = _switch.GetRegistryFor(request); if (registry != null) { request.KeyFullPath = HostRegistry.CombineKeyNames(request.KeyFullPath, subKeyName); var result = registry.OpenKey(request); hSubKey = request.Handle; return(result); } hSubKey = 0; return(NativeResultCode.InvalidHandle); }
public NativeResultCode CreateKey(uint hKey, string subKeyName, out uint hSubKey, out RegCreationDisposition creationDisposition) { var request = new RegistryRequest { Handle = hKey }; var registry = _switch.GetRegistryFor(request); request.KeyFullPath = HostRegistry.CombineKeyNames(request.KeyFullPath, subKeyName); if (registry != null) { var result = registry.CreateKey(request, out creationDisposition); hSubKey = request.Handle; return(result); } hSubKey = 0; creationDisposition = RegCreationDisposition.NoKeyCreated; return(NativeResultCode.InvalidHandle); }