public static void WriteSingleValue(string targetPath, RegistryKeyValue keyValuePair, RegistryValueKind regType) //RegValueKind regType { using (var hklm = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64)) using (RegistryKey registryKey = hklm.OpenSubKey(targetPath, true)) { registryKey.SetValue(keyValuePair.KeyName, keyValuePair.KeyValue, regType); } }
public static RegistryKeyValue ReadKey(string targetPath) { RegistryKeyValue keyValuePair = new RegistryKeyValue(); using (var hklm = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64)) using (RegistryKey registryKey = hklm.OpenSubKey(targetPath)) { string valueName = registryKey.GetValueNames().First(); string value = registryKey.GetValue(valueName).ToString(); keyValuePair.KeyName = valueName; keyValuePair.KeyValue = value; return(keyValuePair); //value; } }
static void Main(string[] args) { //string workGroupPath = @"SOFTWARE\JavaSoft\Prefs\avid\workgroups\avid technology incorporated\data\com\avid\workgroup\remoting\setting\groups"; string workGroupPath = @"SOFTWARE\JavaSoft\Prefs\avid\workgroups\avid technology incorporated\data\com\avid\workgroup\remoting\setting"; string WorkGroupGPSPath = @"SOFTWARE\JavaSoft\Prefs\avid\workgroups\avid technology incorporated\data\com\avid\workgroup\remoting\setting\grouplocators\isis3wg"; string WorkGroupGps1 = @"isis3gps01.net.dr.dk:4160"; string WorkGroupGps2 = @"isis3gps02.net.dr.dk:4160"; string singleKeyName = "delete"; RegistryKeyValue registryKeyValue = new RegistryKeyValue() { KeyName = "testKey", KeyValue = "testValue" }; RegistryHandler.DeleteSingleKey(workGroupPath, singleKeyName); // OK , works as expected //RegistryHandler.DeleteAllSubKeys(WorkGroupGPSPath); //RegistryHandler.CreateSingleKey(workGroupPath); }