使用C 製作簡易的登錄檔編輯器 收藏文章

2021-04-23 22:31:13 字數 4233 閱讀 8053

使用c#製作簡易的登錄檔編輯器

本文節選自《21天學通c#》一書

下面來實現乙個簡易的登錄檔編輯器。它具備了windows作業系統自帶的登錄檔編輯器的一般功能。如示例**19-7所示。

示例**19-7

主窗體。主窗體在啟動時,會在載入事件中載入登錄檔到樹形控制項中,就像在windows作業系統中的登錄檔編輯器一樣。**如下所示。

01    private void treeview1_afterselect(object sender, treevieweventargs e)

02    

07         catch

08        

11         str = e.node.text;                    //獲取節點的值

12         if (strinfo != string.empty)            //如果選擇節點不是空的

13        

16         else

17        

20    }

建立註冊鍵,**如下所示。

01    private void button1_click(object sender, eventargs e)

02    

15               case "2":                        //如果單擊了「可擴充字串值」按鈕

16                  

20               }

21          this.banding();                        //重新重新整理窗體

22          }

23          else

24         

27    }

設定字串的值,**如下所示。

01    private void radiobutton1_checkedchanged(object sender, eventargs e)

02    

07    }

08    private void radiobutton2_checkedchanged(object sender, eventargs e)

09    

14    }

15    private void banding()                        //對窗體進行繫結

16    

28         treenode tuse = new treenode("hkey_current_user");

29         foreach (string si in rkuse.getsubkeynames())

30        

33         treenode tmachine = new treenode("hkey_local_machine");

34         foreach (string si in rkmachine.getsubkeynames())

35        

38         treenode tusers = new treenode("hkey_users");

39         foreach (string si in rkusers.getsubkeynames())

40        

43         treenode tconfig = new treenode("hkey_current_config");

44         foreach (string si in rkconfig.getsubkeynames())

45        

48         this.tvregedit.nodes.add(troot);

49         this.tvregedit.nodes.add(tuse);

50         this.tvregedit.nodes.add(tmachine);

51         this.tvregedit.nodes.add(tusers);

52         this.tvregedit.nodes.add(tconfig);

53    }

01    private void button3_click(object sender, eventargs e)

02    

建立項,**如下所示。

01    private void button2_click(object sender, eventargs e)

02    

刪除指定的項,**如下所示。

01    private void button4_click(object sender, eventargs e)

02    

11    }

顯示項,**如下所示:

01    private void button5_click(object sender, eventargs e)

02    

10        else

11       

14        switch (de****tresut)                    //進行分支選擇

15       

21         case "hkey_current_user":                //如果是hkey_current_user項

22             

26         case "hkey_local_machine":                //如果是hkey_local_machine項

27             

31         case "hkey_users":                    //如果是hkey_users項

32             

36         case "hkey_current_config":            //如是hkey_current_config項

37             

41         }

42         try                                    //可能引發異常

43        

52               }

53               else

54              

57          }

58          catch

59         

62    }

【執行結果】選擇「除錯」|「啟動除錯」命令執行程式,結果如圖19.9所示。

圖19.9  登錄檔編輯器

【範例19-8】可能有的讀者在使用一些優化作業系統的軟體,例如windows優化大師。它有的一些功能就是通過優化登錄檔實現的。下面就演示優化系統的一些例項,例如,實現加快選單顯示速度的功能等。如示例**19-8所示。

示例**19-8

01    using microsoft.win32;                        //登錄檔命名空間

02    namespace ex_19_8

03    

10            private void button1_click(object sender, eventargs e)

//單擊事件,修改重新整理速度

11           

19                catch(exception ey)                //捕獲異常資訊

20               

23            }

24            private void button2_click(object sender, eventargs e)

//單擊事件,修改選單顯示速度

25           

32                catch(exception ey)                    //捕獲異常資訊

33               

36            }

37        }

38    }

【執行結果】選擇「除錯」|「啟動除錯」命令執行程式 

64 bit Windows中的登錄檔編輯器

在64 bit的windows作業系統中既可以安裝64 bit版本的應用程式,也可以安裝32 bit版本的應用程式,但是這兩個版本的應用程式儲存在登錄檔中的資訊是位於不同位置的,也就是說登錄檔鍵值在64 bit的windows中被分成兩個部分,32 bit的鍵值和64 bit的鍵值。下面就來介紹32...

64 bit Windows中的登錄檔編輯器

在64 bit的windows作業系統中既可以安裝64 bit版本的應用程式,也可以安裝32 bit版本的應用程式,但是這兩個版本的應用程式儲存在登錄檔中的資訊是位於不同位置的,也就是說登錄檔鍵值在64 bit的windows中被分成兩個部分,32 bit的鍵值和64 bit的鍵值。下面就來介紹32...

CSDN markdown編輯器的簡易使用教程

本markdown編輯器使用stackedit修改而來,用它寫部落格,將會帶來全新的體驗哦 markdown 是一種輕量級標記語言,它允許人們使用易讀易寫的純文字格式編寫文件,然後轉換成格式豐富的html頁面。維基百科 使用簡單的符號標識不同的標題,將某些文字標記為粗體或者斜體,建立乙個鏈結等,詳細...