Go:操作註冊表

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。
package mainimport ("fmt""log""golang.org/x/sys/windows/registry")func main() {key, exists, err := registry.CreateKey(registry.CURRENT_USER, "SOFTWARE\\Hello Go", registry.ALL_ACCESS)if err != nil {log.Fatal(err)}defer key.Close()if exists {fmt.Println("鍵已存在")} else {fmt.Println("建立註冊表鍵")}// 寫入32位整形值key.SetDWordValue("DWORD", 0xFFFFFFFF)// 寫入64位整形值key.SetQWordValue("QDWORD", 0xFFFFFFFFFFFFFFFF)// 寫入字串key.SetStringValue("String", "hello")// 寫入多行字串key.SetStringsValue("Strings", []string{"hello", "world"})// 寫入二進位key.SetBinaryValue("Binary", []byte{0x11, 0x22})// 讀取字串值s, _, _ := key.GetStringValue("String")fmt.Println(s)// 枚舉所有值名稱values, _ := key.ReadValueNames(0)fmt.Println(values)// 建立三個子鍵subkey1, _, _ := registry.CreateKey(key, "Sub1", registry.ALL_ACCESS)subkey2, _, _ := registry.CreateKey(key, "Sub2", registry.ALL_ACCESS)subkey3, _, _ := registry.CreateKey(subkey1, "Sub3", registry.ALL_ACCESS)defer subkey1.Close()defer subkey2.Close()defer subkey3.Close()// 枚舉所有子鍵keys, _ := key.ReadSubKeyNames(0)fmt.Println(keys)// 該鍵有子項,所以會刪除失敗err = registry.DeleteKey(key, "Sub1")if err != nil {fmt.Println(err)}    // 沒有子項,刪除成功registry.DeleteKey(key, "Sub2")}

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.