-
레지스트리 관리기능 클래스 예제 코드업무용 소스 예제 2021. 8. 21. 15:37728x90반응형728x90
레지스트리 관리기능 클래스 예제 코드
읽고, 쓰고 및 삭제 기능
public sealed class RegManager { public static bool DeleteRegKey(string KeyString, string KeyName) { bool flag; try { if (Environment.Is64BitOperatingSystem) { RegistryKey localMachine64 = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64); localMachine64.OpenSubKey(KeyString, true).DeleteValue(KeyName); localMachine64.Close(); } else { Registry.LocalMachine.OpenSubKey(KeyString, true).DeleteValue(KeyName); Registry.LocalMachine.Close(); } flag = true; } catch (Exception ex) { TraceManager.AddLog(ex.Message + ex.StackTrace); flag = false; } return flag; } public static object ReadRegKey(string KeyString, string KeyName, object DefaultValue) { object objectValue; try { if (Environment.Is64BitOperatingSystem) { RegistryKey localMachine64 = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64); objectValue = RuntimeHelpers.GetObjectValue(localMachine64.CreateSubKey(KeyString).GetValue(KeyName)); if (objectValue == null) { localMachine64.CreateSubKey(KeyString).SetValue(KeyName, RuntimeHelpers.GetObjectValue(DefaultValue)); objectValue = RuntimeHelpers.GetObjectValue(DefaultValue); } localMachine64.Close(); } else { objectValue = RuntimeHelpers.GetObjectValue(Registry.LocalMachine.CreateSubKey(KeyString).GetValue(KeyName)); if (objectValue == null) { Registry.LocalMachine.CreateSubKey(KeyString).SetValue(KeyName, RuntimeHelpers.GetObjectValue(DefaultValue)); objectValue = RuntimeHelpers.GetObjectValue(DefaultValue); } Registry.LocalMachine.Close(); } } catch (Exception ex) { TraceManager.AddLog(ex.Message + ex.StackTrace); objectValue = DefaultValue; } return objectValue; } public static bool WriteRegKey(string KeyString, string KeyName, object KeyValue) { bool flag; try { if (Environment.Is64BitOperatingSystem) { RegistryKey localMachine64 = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64); localMachine64.CreateSubKey(KeyString).SetValue(KeyName, RuntimeHelpers.GetObjectValue(KeyValue)); localMachine64.Close(); } else { Registry.LocalMachine.CreateSubKey(KeyString).SetValue(KeyName, RuntimeHelpers.GetObjectValue(KeyValue)); Registry.LocalMachine.Close(); } flag = true; } catch (Exception ex) { TraceManager.AddLog(ex.Message + ex.StackTrace); flag = false; } return flag; } }
728x90반응형'업무용 소스 예제' 카테고리의 다른 글
학원 관리에 유용한 CommonTypes 구조체 정의 예제 (2) 2021.08.21 DevExpress을 활용한 ComboBoxManager 예제 (1) 2021.08.21 이미지 화일명으로 이미지 객체를 안전하게 생성후 리턴 예제 (0) 2021.08.21 avicap32.dll을 이용한 C# 영상 제어 예제 (0) 2021.08.21 Step만큼 Address를 증가 시키는 기능 예제 (0) 2021.08.21