- 浏览: 63665 次
- 性别:
- 来自: 烟台
最新评论
using System;
using System.Collections.Generic;
using Microsoft.Win32;
namespace Register
{
public class RegisterOperate
{
/**/
/// <summary>
/// 写入注册表
/// </summary>
/// <param></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></param>
/// <param></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></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;
}
}
}
}
//C#软件注册
private void button1_Click(object sender, EventArgs e)
{
try
{
Int32 tLong = (Int32)Registry.GetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\ding", "UserTimes", 0);
if (tLong < 30)
{
int Times = tLong + 1;
Registry.SetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\ding", "UserTimes", Times);
MessageBox.Show("这是您第" + Times + "次使用。");
}
else
{
MessageBox.Show("试用期已到,请重新注册。");
Application.Exit();//退出应用程序
}
}
catch
{
Registry.SetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\ding", "UserTimes","1", RegistryValueKind.DWord);
MessageBox.Show("感谢您使用本软件");
}
}
using System.Collections.Generic;
using Microsoft.Win32;
namespace Register
{
public class RegisterOperate
{
/**/
/// <summary>
/// 写入注册表
/// </summary>
/// <param></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></param>
/// <param></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></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;
}
}
}
}
//C#软件注册
private void button1_Click(object sender, EventArgs e)
{
try
{
Int32 tLong = (Int32)Registry.GetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\ding", "UserTimes", 0);
if (tLong < 30)
{
int Times = tLong + 1;
Registry.SetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\ding", "UserTimes", Times);
MessageBox.Show("这是您第" + Times + "次使用。");
}
else
{
MessageBox.Show("试用期已到,请重新注册。");
Application.Exit();//退出应用程序
}
}
catch
{
Registry.SetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\ding", "UserTimes","1", RegistryValueKind.DWord);
MessageBox.Show("感谢您使用本软件");
}
}
发表评论
-
控件的使用
2011-12-31 18:49 6431、AdRotator控件用法 <asp:AdRotat ... -
常用的简单算法
2011-11-17 20:38 800用二重循环实现冒泡排序 1 如何用二重循环将5个数字排序?N ... -
状态管理
2011-10-31 22:06 767内置对象方法 信息量大小 作用 ... -
现在免费的.Net空间越来越少了,我发现了个空间大,而且完全免费的
2011-10-30 12:33 10云空间-全面进入免费云时代-国内首家免费T级云空间! 云空间- ... -
Asp.Net小技巧合集
2011-09-15 18:33 81620120122 小雪 在google中找免费的电子书籍 搜索 ... -
根据数据库现有数据生成单号
2011-08-01 22:45 915/// <summary> /// ... -
FreeTextBox控件的用法
2011-08-01 22:42 1122下载网址:http://freetextbox.com/def ... -
RSS读取文章
2011-08-01 22:37 1080/// <summary> /// 加载R ... -
C#中发送Email
2011-08-01 22:29 1089// 引入命名空间 using System.Net; usi ... -
Treeview控件的用法
2011-07-31 22:30 2009//treeview控件的用法,据我现在看,以下方法在winf ... -
数据库读取和保存图片
2011-07-31 20:49 928//从数据库读取图片,并保存为11.jpg using (Sq ... -
绘制饼图
2011-07-31 20:38 627using System.Drawing; public pa ... -
WebGrid用法
2011-07-31 12:15 5224首先安装Infragistics.NetAdv ... -
封装的上传文件的方法
2011-03-19 18:24 1094//上传按钮 protected void Butt ... -
IO操作
2011-03-19 18:22 6761、創建目錄,支持多級,根據輸入的目錄地址 Director ... -
彈出提示框
2011-03-19 18:19 9411、Response.Write(“<script la ... -
report service研究
2011-03-19 18:19 1003報表服務器 Overwritedatasources ... -
Asp.net通用方法及属性
2011-03-19 17:57 8021. 在ASP.NET中专用属性: 获取服务器计算机名:P ... -
保存DataTable的数据
2011-03-19 17:47 2220在botton的click事件中定义datatable,当cl ... -
在Asp.Net中使用事务
2011-03-16 21:37 695private string mConnStr = Confi ...
相关推荐
在本段内容中,主要介绍了C#中注册表操作类的基础知识,包括注册表基项的定义和注册表数据类型的分类。这些知识点是进行C#编程时,尤其是进行系统配置和管理时的重要组成部分。 注册表是Windows操作系统中的一个...
本篇文章将详细介绍如何使用C#编写一个完整的注册表读写操作类。 首先,让我们了解一下注册表的基本结构。注册表主要由几个主要部分组成:HKEY_LOCAL_MACHINE(本地机器),HKEY_CURRENT_USER(当前用户),HKEY_...
C#演示注册表的读写操作,程序中引入了using Microsoft.Win32; 主要是对注册表的操作要用到Registry和RegistryKey两个类,写入注册表:以可写的方式打开SOFTWARE子键,依次创建ChoseColor子键和Color子键。读取...
在编程领域,C#是一种广泛...通过以上讲解,你应该对C#读写注册表有了深入理解。实践中,结合提供的源码,你可以学习到更多关于如何处理注册表操作的细节和技巧。记住,始终谨慎处理注册表,确保系统的稳定性和安全性。
首先,要进行注册表操作,你需要引入`Microsoft.Win32`命名空间,该命名空间包含了`Registry`类和一系列与注册表相关的类。在C#程序中添加以下语句以引入命名空间: ```csharp using Microsoft.Win32; ``` 接下来...
下面将详细介绍如何使用C#进行读写注册表的操作。 一、C#读取注册表 读取注册表通常涉及到以下几个步骤: 1. 引用命名空间:首先,在C#代码中,你需要引入`Microsoft.Win32`命名空间,它包含了处理注册表的相关类...
C#作为.NET框架下的主要编程语言,提供了丰富的API来操作注册表,使得开发者能够轻松地进行读取、写入和修改注册表键值。本篇文章将深入探讨如何在C#中实现注册表的写入和读取操作。 首先,我们要了解.NET框架提供...
以上就是关于C#读写注册表以及初始化窗体状态的核心概念和实现方式。合理运用这些知识,可以为你的C#应用程序提供更好的用户定制功能和持久性。在实际开发中,还需要注意遵循最佳实践,确保程序的稳定性和安全性。
1. **注册表操作类的设计**: - 类的设计是将注册表的四个基本操作——写入(Write)、读取(Read)、删除(Delete)和判断是否存在(Exists)封装在一起。这样做可以提高代码的复用性和可维护性,避免在多个地方...
标题中的"C#读写注册表 (2).pdf"指出,本文档主要介绍如何使用C#编程语言进行注册表的读写操作。注册表是Windows操作系统中存储系统设置、用户偏好和应用程序配置信息的关键数据库,自Windows 95以来一直存在,并在...
NET框架在Microsoft.Win32名字空间中提供了两个类来操作注册表:Registry和RegistryKey。这两个类都是密封类不允许被继承。下面我们分别来介绍这两个类。Registry类提供了7个公共的静态域,分别代表7个基本主键...
C#语言, 可对WINDOWS注册表进行读写修改等操作。
### C#中的注册表操作详解 #### 注册表基项静态域:理解C#中注册表的访问方式 在C#编程中,访问Windows注册表是常见需求之一,尤其是在需要读取或修改系统配置的情况下。注册表是Windows操作系统中用于存储系统和...
通过以上介绍和示例代码,我们可以看到,在C#中操作Windows注册表并不复杂,只需要合理利用.NET Framework提供的API即可轻松完成各种常见的注册表操作任务。当然,在实际开发过程中还需要根据具体需求进行更深入的...
### 一、注册表操作类(Register) 在C#中,`Register` 类主要用于处理与Windows注册表的操作。此类封装了一系列方法来帮助开发者更方便地进行注册表读写、创建、删除等操作。 #### 1. 属性 - **SubKey**:此属性...
在IT行业中,C#是一种...总之,C#提供了方便的API来处理注册表操作,这对于开发需要保存用户设置或系统状态的软件来说是非常有用的。在实际应用中,一定要谨慎操作,并确保遵循最佳实践以保持系统的稳定性和安全性。
2. **读写注册表值**:使用`GetValue`和`SetValue`方法读取和设置注册表键值。例如,将序列号存储为字符串类型: ```csharp string serialNumber = softwareKey.GetValue("SerialNumber") as string; softwareKey....
为了提高代码的可复用性,我们可以创建一个注册表操作类,包含读取、写入、删除等方法。以下是一个简单的示例: ```csharp public class RegistryHelper { public static void WriteValue(string keyPath, string ...
本教程将深入讲解如何在C#中进行注册表的读写操作,为初学者提供一个清晰的指南。 首先,我们要了解C#中访问注册表的类库——`Microsoft.Win32.Registry`。这个命名空间包含了几个关键类,如`RegistryKey`,它代表...
C#提供了强大的库来操作注册表,主要通过`Microsoft.Win32`命名空间下的`Registry`类和`RegistryKey`类实现。 ### 二、C#操作注册表 #### 1. 读取注册表 在C#中读取注册表的基本步骤如下: ```csharp using ...