📄 registryutil.cs
字号:
using System;
using Microsoft.Win32;
namespace UtilityLibrary.Win32
{
/// <summary>
/// Summary description for Registry.
/// </summary>
public class RegistryUtil
{
#region Constructors
// No need to constructo this object
private RegistryUtil()
{
}
#endregion
#region Implementation
static public void WriteToRegistry(RegistryKey RegHive, string RegPath, string KeyName, string KeyValue)
{
// Split the registry path
string[] regStrings;
regStrings = RegPath.Split('\\');
// First item of array will be the base key, so be carefull iterating below
RegistryKey[] RegKey = new RegistryKey[regStrings.Length + 1];
RegKey[0] = RegHive;
for( int i = 0; i < regStrings.Length; i++ )
{
RegKey[i + 1] = RegKey[i].OpenSubKey(regStrings[i], true);
// If key does not exist, create it
if (RegKey[i + 1] == null)
{
RegKey[i + 1] = RegKey[i].CreateSubKey(regStrings[i]);
}
}
// Write the value to the registry
try
{
RegKey[regStrings.Length].SetValue(KeyName, KeyValue);
}
catch (System.NullReferenceException)
{
throw(new Exception("Null Reference"));
}
catch (System.UnauthorizedAccessException)
{
throw(new Exception("Unauthorized Access"));
}
}
static public string ReadFromRegistry(RegistryKey RegHive, string RegPath, string KeyName, string DefaultValue)
{
string[] regStrings;
string result = "";
regStrings = RegPath.Split('\\');
//First item of array will be the base key, so be carefull iterating below
RegistryKey[] RegKey = new RegistryKey[regStrings.Length + 1];
RegKey[0] = RegHive;
for( int i = 0; i < regStrings.Length; i++ )
{
RegKey[i + 1] = RegKey[i].OpenSubKey(regStrings[i]);
if (i == regStrings.Length - 1 )
{
result = (string)RegKey[i + 1].GetValue(KeyName, DefaultValue);
}
}
return result;
}
#endregion
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -