using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using Microsoft.Win32;
public partial class Register : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("這裏是讀取到的信息"+"<br/>");
ReadRegedit();
Response.Write("<br/>");
Response.Write("這裏將要寫入信息swort/swort-test" + "<br/>");
WriteRegedit();
Response.Write("寫入結束" + "<br/>");
Response.Write("查看存在與否" + "<br/>");
ExistsRegedit();
Response.Write("查看結束" + "<br/>");
Response.Write("刪除" + "<br/>");
DeleteRegedit();
Response.Write("刪除結束" + "<br/>");
Response.Write("查看存在與否" + "<br/>");
ExistsRegedit();
Response.Write("查看結束" + "<br/>");
}
/// <summary>
/// 注冊表的讀取
/// </summary>
/// <returns></returns>
public void ReadRegedit()
{
RegistryKey rk = Registry.CurrentUser;
RegistryKey softWare = rk.OpenSubKey("Software");
RegistryKey microsoft = softWare.OpenSubKey("Microsoft");
RegistryKey windows = microsoft.OpenSubKey("Windows");
RegistryKey current = windows.OpenSubKey("CurrentVersion");
RegistryKey explorer = current.OpenSubKey("Explorer");
RegistryKey shell = explorer.OpenSubKey(@"Shell Folders");
foreach (string b in shell.GetValueNames())//這裏用shell.GetValueNames()不是shell.GetSubKeyNames()
{
Response.Write( b+" "+ shell.GetValue(b).ToString());
Response.Write("<br/>");
}
}
/// <summary>
/// 注冊表的寫入
/// </summary>
/// <returns></returns>
public bool WriteRegedit()
{
try
{
RegistryKey rk = Registry.CurrentUser;
RegistryKey softWare = rk.OpenSubKey("Software");
RegistryKey microsoft = softWare.OpenSubKey("Microsoft");
RegistryKey windows = microsoft.OpenSubKey("Windows");
RegistryKey current = windows.OpenSubKey("CurrentVersion");
RegistryKey explorer = current.OpenSubKey("Explorer");
RegistryKey shell = explorer.OpenSubKey(@"Shell Folders", true);//這裏必須加true就是得到寫入權限
RegistryKey key = shell.CreateSubKey("swort");//創建swort目錄
key.SetValue("swort", "test");
//在swort目錄下建立寫入swort test
Response.Write("寫入成功!!!!!!!!!");
return true;
}
catch
{
return false;
}
}
/// <summary>
/// 注冊表的刪除
/// </summary>
/// <returns></returns>
public bool DeleteRegedit()
{
try
{
RegistryKey rk = Registry.CurrentUser;
RegistryKey softWare = rk.OpenSubKey("Software");
RegistryKey microsoft = softWare.OpenSubKey("Microsoft");
RegistryKey windows = microsoft.OpenSubKey("Windows");
RegistryKey current = windows.OpenSubKey("CurrentVersion");
RegistryKey explorer = current.OpenSubKey("Explorer");
RegistryKey shell = explorer.OpenSubKey(@"Shell Folders",true);
RegistryKey swort = shell.OpenSubKey("swort",true);//這裏必須加true就是得到寫入權限
swort.DeleteValue("swort");//刪除swort的值 這個連鍵值一起刪除了 剩下一個
shell.DeleteSubKey("swort",false);//刪除swort這個目錄 要刪除這個目錄 必須具有權限
Response.Write("刪除成功!!!!!!!!!");
return true;
}
catch
{
return false;
}
return true;
}
/// <summary>
/// 查詢某個鍵值是否存在
/// </summary>
/// <returns></returns>
public bool ExistsRegedit()
{
RegistryKey rk = Registry.CurrentUser;
RegistryKey softWare = rk.OpenSubKey("Software");
RegistryKey microsoft = softWare.OpenSubKey("Microsoft");
RegistryKey windows = microsoft.OpenSubKey("Windows");
RegistryKey current = windows.OpenSubKey("CurrentVersion");
RegistryKey explorer = current.OpenSubKey("Explorer");
RegistryKey shell = explorer.OpenSubKey(@"Shell Folders");
if (shell.SubKeyCount != 0)
{
RegistryKey swort = shell.OpenSubKey("swort");
foreach (string b in swort.GetValueNames())
{
if (b == "swort")
{
Response.Write("存在這個鍵!");
return true;
}
}
Response.Write("不存在這個鍵!");
return false;
}
else
{ Response.Write("不存在這個鍵!");
return false;
}
}
}