using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
using Microsoft.Win32;

namespace WindowsForm

...{
public partial class doits : UserControl

...{
private RegistryKey hkml;
private DataSet ds = new DataSet();
private string MenuName;
public string StringName

...{
set

...{
MenuName = value;
}
}
public doits()

...{
InitializeComponent();
}
private void doits_Load(object sender, EventArgs e)

...{
if (MenuName != null)

...{
//this.button1.Text = MenuName;
create();
}
else

...{
// this.button1.Text = "没有任何操作";
label1.Text = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
toolStripStatusLabel1.Text = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
this.label2.Text = "程序制作说明:";
this.richTextBox1.Text = "程序说明文件,自己写";
this.button1.Visible = false;
this.button2.Visible = false;
}
}
private void create()

...{
SqlDataAdapter ad = new SqlDataAdapter("select * from operator where MenuID=" + MenuName + ";select * from Menu where ID=" + MenuName, "server=.;uid=sa;pwd=;database=Data");
ad.Fill(ds);
if (ds.Tables[0].Rows.Count > 0)

...{
this.label1.Text = "数据库优化名称为:" + ds.Tables[1].Rows[0]["MenuText"].ToString();
toolStripStatusLabel1.Text = ds.Tables[1].Rows[0]["MenuText"].ToString();
this.richTextBox1.Text = ds.Tables[0].Rows[0]["Description"].ToString();
}
else

...{
this.button1.Enabled = false;
this.button2.Enabled = false;
label1.Text = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
toolStripStatusLabel1.Text = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
this.label2.Text = "程序制作说明:";
this.richTextBox1.Text = "程序说明文件,自己写";
MessageBox.Show("我日,没有要修改的数据","操",MessageBoxButtons.OK,MessageBoxIcon.Warning);
}
}

private void button1_Click(object sender, EventArgs e)

...{
//打开数据库,更加传进来的参数,对数据库进行一步步优化操作,及注册表的增删改等等操作。
foreach (DataRow dr in ds.Tables[0].Rows)

...{
if (dr["operator"].ToString() == "添加")

...{
string path = dr["Address"].ToString();
string name = dr["opName"].ToString();
object tovalue = dr["opNewValue"].ToString();
RegistryValueKind Kind;
if (dr["opType"].ToString() == "Binary")

...{
Kind = RegistryValueKind.Binary;
}
else if (dr["opType"].ToString() == "DWord")

...{
Kind = RegistryValueKind.DWord;
}
else if (dr["opType"].ToString() == "ExpandString")

...{
Kind = RegistryValueKind.ExpandString;
}
else if (dr["opType"].ToString() == "MultiString")

...{
Kind = RegistryValueKind.MultiString;
}
else if (dr["opType"].ToString() == "QWord")

...{
Kind=RegistryValueKind.QWord;
}
else if (dr["opType"].ToString() == "String")

...{
Kind=RegistryValueKind.String;
}
else

...{
Kind=RegistryValueKind.Unknown;
}
WTRegedit(path,name,tovalue,Kind);
}
else if (dr["operator"].ToString() == "修改")

...{
string path = dr["Address"].ToString();
string name = dr["opName"].ToString();
object tovalue = dr["opNewValue"].ToString();
ChangeRegedit(path, name, tovalue);
}
else if (dr["operator"].ToString() == "删除")

...{
string path = dr["Address"].ToString();
string name = dr["opName"].ToString();
dRegedit(path, name);
}
else

...{
MessageBox.Show("他妈的,我不能处理了!你数据库怎么录入的。");
}
}
}

private void button2_Click(object sender, EventArgs e)

...{
foreach (DataRow dr in ds.Tables[0].Rows)

...{
if (dr["operator"].ToString() == "添加")

...{
string path = dr["Address"].ToString();
string name = dr["opName"].ToString();
dRegedit(path, name);
}
else if (dr["operator"].ToString() == "修改")

...{
string path = dr["Address"].ToString();
string name = dr["opName"].ToString();
object tovalue = dr["opOleValue"].ToString();
ChangeRegedit(path, name, tovalue);
}
else if (dr["operator"].ToString() == "删除")

...{
string path = dr["Address"].ToString();
string name = dr["opName"].ToString();
object tovalue = dr["opOleValue"].ToString();
RegistryValueKind Kind;
if (dr["opType"].ToString() == "Binary")

...{
Kind = RegistryValueKind.Binary;
}
else if (dr["opType"].ToString() == "DWord")

...{
Kind = RegistryValueKind.DWord;
}
else if (dr["opType"].ToString() == "ExpandString")

...{
Kind = RegistryValueKind.ExpandString;
}
else if (dr["opType"].ToString() == "MultiString")

...{
Kind = RegistryValueKind.MultiString;
}
else if (dr["opType"].ToString() == "QWord")

...{
Kind = RegistryValueKind.QWord;
}
else if (dr["opType"].ToString() == "String")

...{
Kind = RegistryValueKind.String;
}
else

...{
Kind = RegistryValueKind.Unknown;
}
WTRegedit(path, name, tovalue, Kind);
}
else

...{
MessageBox.Show("他妈的,我不能处理了!你数据库怎么录入的。");
}
}
}



private RegistryKey setKey(string path)

...{
string[] a = path.Split('\');
if (path.Substring(0, a[0].Length) == "HKEY_CLASSES_ROOT")

...{
hkml = Registry.ClassesRoot;
}
else if (path.Substring(0, a[0].Length) == "HKEY_CURRENT_USER")

...{
hkml = Registry.CurrentUser;
}
else if (path.Substring(0, a[0].Length) == "HKEY_LOCAL_MACHINE")

...{
hkml = Registry.LocalMachine;
}
else if (path.Substring(0, a[0].Length) == "HKEY_USERS")

...{
hkml = Registry.Users;
}
else if (path.Substring(0, a[0].Length) == "HKEY_CURRENT_CONFIG")

...{
hkml = Registry.CurrentConfig;
}
else

...{
hkml = null;
}
return hkml;
}

public string GetRegeditData(string path, string name)

...{
string[] aimnames;
string keyData = string.Empty;
hkml = setKey(path).OpenSubKey(path.Substring(hkml.Name.Length + 1), true);
aimnames = hkml.GetValueNames();
foreach (string aimKey in aimnames)

...{
if (aimKey == name)

...{
keyData = hkml.GetValue(name).ToString();
}
}
return keyData;
}

//向注册表中写人数据
public void WTRegedit(string path, string name, object tovalue, RegistryValueKind Kind)

...{
hkml = setKey(path).CreateSubKey(path.Substring(hkml.Name.Length + 1));
hkml.SetValue(name, tovalue, Kind);
}
public void ChangeRegedit(string path, string name, object tovalue)

...{
hkml = setKey(path).CreateSubKey(path.Substring(hkml.Name.Length + 1));
hkml.SetValue(name, tovalue);
}

public void dRegedit(string path, string name)

...{
string[] aimnames;
hkml = setKey(path).OpenSubKey(path.Substring(hkml.Name.Length + 1), true);
aimnames = hkml.GetValueNames();
foreach (string aimKey in aimnames)

...{
if (aimKey == name)
hkml.DeleteValue(name);
}
}

public void DeleteRegist(string path, string name)

...{
string[] aimnames;
hkml = setKey(path).OpenSubKey(path.Substring(hkml.Name.Length + 1), true);
aimnames = hkml.GetSubKeyNames();
foreach (string aimKey in aimnames)

...{
if (aimKey == name)
hkml.DeleteSubKey(name);
}
}
}
}

posted on
2007-06-29 13:56
wkjs
阅读(
204)
评论()
收藏
举报