首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

刚写的C#NET注册表操作类

2012-02-10 
刚写的C#.NET注册表操作类,请指教usingSystemusingSystem.Collections.GenericusingSystem.TextusingMi

刚写的C#.NET注册表操作类,请指教
using   System;  
using   System.Collections.Generic;  
using   System.Text;  
using   Microsoft.Win32;  

namespace   MyName.Cls  
{  
        class   ClsRegedit  
        {  
                String   Path;  
                String   MyKey;  
                String   Name;  
                String   MyValue;  
                ///   <summary>  
                ///   构造函数  
                ///   </summary>  
                ///   <param   name= "ParentKey "> 路径 </param>  
                ///   <param   name= "ThisKey "> 本键 </param>  
                ///   <param   name= "key "> 键名 </param>  
                ///   <param   name= "value "> 键值 </param>  
                public   ClsRegedit(String   ParentKey,   String   ThisKey,   string   key,   string   value)  
                {  
                        Path   =   ParentKey;  
                        MyKey   =   ThisKey;  
                        Name   =   key;  
                        MyValue   =   value;  
                }  
                ///   <summary>  
                ///   写注册表的值  
                ///   </summary>  
                ///   <returns> </returns>  
                public   string     SetRegedit()  
                {  
                        string   StrError;  
                        RegistryKey   pregkey   =   Registry.CurrentUser.OpenSubKey(Path,   true);  
                        if   (pregkey   ==   null)  
                        {  
                                StrError   =   "输入的{ "   +   Path   +   "}主键不存在 ";  


                                return   StrError;  
                        }  
                        else  
                        {  
                                //如果键没有打开就表示不存在,TempKey会被返回null  
                                Registry   TempKey   =   pregkey.OpenSubKey(MyKey);  
                                if   (TempKey   ==   null)  
                                {  
                                        //如果不存在就创建键  
                                        RegistryKey   MyKey   =   pregkey.CreateSubKey(MyKey);  
                                        MyKey.SetValue(Name,   MyValue);  
                                }  
                                else  
                                {  
                                        //如果存在就将其显示出来  
                                        MyKey.SetValue(Name,   MyValue);  
                                }  
                        }  
                }  
                ///   <summary>  
                ///   取注册表的值  
                ///   </summary>  
                ///   <returns> 返回字符串 </returns>  
                public   string   GetRegeditValue()  
                {  
                        string   StrError;  
                        string   StrPath;  
                        StrPath   =   Path   +   @ "\ "   +   MyKey;  


                        RegistryKey   pregkey   =   Registry.CurrentUser.OpenSubKey(StrPath,   true);  
                        if   (pregkey   ==   null)  
                        {  
                                StrError   =   "输入的{ "   +   StrPath   +   "}主键不存在 ";  
                                return   StrError;  
                        }  
                        else  
                        {  
                          return   pregkey.GetValue( "HOSTIP ").ToString();  
                        }  
                }  
        }  
        }  



[解决办法]
SetRegedit这个方法可以编译通过???
可以写成静态类吧?
我最烦每次都要new一个类 :)

热点排行