C#读写注册表操作类
2012-06-26 10:19
477 查看
C#读写注册表操作类,一共包括三个方法. 1. 写注册表 2.修改注册表 3.判断键值是否存在
经测试,本操作类也适用于.net compact framework 2.0, windows mobile 平台的开发。
首先要引入命名空间
程序代码
using Microsoft.Win32;
所有代码:
程序代码
using System;
using System.Collections.Generic;
using Microsoft.Win32;
namespace Register
{
public class RegisterOperate
{
/**/
/// <summary>
/// 写入注册表
/// </summary>
/// <param name="strName"></param>
public static void SetRegEditData(string strName, string strValue)
{
try
{
RegistryKey hklm = Registry.LocalMachine;
RegistryKey software = hklm.OpenSubKey("SOFTWARE", true);
RegistryKey aimdir = software.CreateSubKey("MySoftware");
aimdir.SetValue(strName, strValue);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
/**/
/// <summary>
/// 修改注册表项
/// </summary>
/// <param name="strName"></param>
/// <param name="strValue"></param>
public static void ModifyRegEditData(string strName, string strValue)
{
try
{
RegistryKey hklm = Registry.LocalMachine;
RegistryKey software = hklm.OpenSubKey("SOFTWARE\\MySoftware", true);
software.SetValue(strName, strValue);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
/**/
/// <summary>
/// 判断指定注册表项是否存在
/// </summary>
/// <param name="strName"></param>
/// <returns></returns>
public static bool IsExist(string strName)
{
try
{
bool exit = false;
string[] subkeyNames;
RegistryKey hkml = Registry.LocalMachine;
RegistryKey software = hkml.OpenSubKey("SOFTWARE", true);
RegistryKey aimdir = software.OpenSubKey("MySoftware", true);
subkeyNames = aimdir.GetValueNames();
foreach (string keyName in subkeyNames)
{
if (keyName == strName)
{
exit = true;
return exit;
}
}
return exit;
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
return false;
}
}
}
}
使用本类:
RegisterOperate.SetRegEditData("KeyName","KeyValue")
//在HKEY_LOCAL_MACHINE\Software\MySoftware下面创建KeyName这个键
RegisterOperate.ModifyRegEditData("KeyName","KeyValue")
//修改HKEY_LOCAL_MACHINE\Software\MySoftware下面KeyName这个键的键值
RegisterOperate.IsExist("KeyName")
//判断HKEY_LOCAL_MACHINE\Software\MySoftware下面KeyName这个键是否存在
经测试,本操作类也适用于.net compact framework 2.0, windows mobile 平台的开发。
首先要引入命名空间
程序代码
using Microsoft.Win32;
所有代码:
程序代码
using System;
using System.Collections.Generic;
using Microsoft.Win32;
namespace Register
{
public class RegisterOperate
{
/**/
/// <summary>
/// 写入注册表
/// </summary>
/// <param name="strName"></param>
public static void SetRegEditData(string strName, string strValue)
{
try
{
RegistryKey hklm = Registry.LocalMachine;
RegistryKey software = hklm.OpenSubKey("SOFTWARE", true);
RegistryKey aimdir = software.CreateSubKey("MySoftware");
aimdir.SetValue(strName, strValue);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
/**/
/// <summary>
/// 修改注册表项
/// </summary>
/// <param name="strName"></param>
/// <param name="strValue"></param>
public static void ModifyRegEditData(string strName, string strValue)
{
try
{
RegistryKey hklm = Registry.LocalMachine;
RegistryKey software = hklm.OpenSubKey("SOFTWARE\\MySoftware", true);
software.SetValue(strName, strValue);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
/**/
/// <summary>
/// 判断指定注册表项是否存在
/// </summary>
/// <param name="strName"></param>
/// <returns></returns>
public static bool IsExist(string strName)
{
try
{
bool exit = false;
string[] subkeyNames;
RegistryKey hkml = Registry.LocalMachine;
RegistryKey software = hkml.OpenSubKey("SOFTWARE", true);
RegistryKey aimdir = software.OpenSubKey("MySoftware", true);
subkeyNames = aimdir.GetValueNames();
foreach (string keyName in subkeyNames)
{
if (keyName == strName)
{
exit = true;
return exit;
}
}
return exit;
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
return false;
}
}
}
}
使用本类:
RegisterOperate.SetRegEditData("KeyName","KeyValue")
//在HKEY_LOCAL_MACHINE\Software\MySoftware下面创建KeyName这个键
RegisterOperate.ModifyRegEditData("KeyName","KeyValue")
//修改HKEY_LOCAL_MACHINE\Software\MySoftware下面KeyName这个键的键值
RegisterOperate.IsExist("KeyName")
//判断HKEY_LOCAL_MACHINE\Software\MySoftware下面KeyName这个键是否存在
相关文章推荐
- C#注册表读写完整操作类
- C#操作注册表(读写)
- 【VS调试】C#读写Windows 7注册表时抛出“不允许所请求的注册表访问权”的解决办法
- C# Excel ole文件读写操作类
- 服务程序C#编写系统服务,注册表读写问题
- c#保存窗口位置大小操作类(序列化和文件读写功能)
- 用C#写的一个注册表操作类
- C#中对注册表的操作 读写注册表方法
- C#读写注册表
- C# 注册表操作类(完整版)winform
- Operating the registry help class(C#读写注册表操作)
- C#注册表操作类(完整版)
- C#读写注册表
- 【VS调试】C#读写Windows 7注册表时抛出“不允许所请求的注册表访问权”的解决办法
- C#中关于文件读写操作和注册表操作
- c#小软件(SaveClassic)开发手记--(3)基础类(注册表操作类RegEdit)
- C#读写注册表
- C#.NET注册表操作类
- 【原创】C#注册表操作类(完整版)
- C# 读写注册表