操作注册表

 

package main

import (
"golang.org/x/sys/windows/registry"
)

func main() {
// 创建:指定路径的项
// 路径:HKEY_CURRENT_USER\Software\Hello Go
key, exists, _ := registry.CreateKey(registry.LOCAL_MACHINE, `SOFTWARE\MYAPP\GO`, registry.ALL_ACCESS)
defer key.Close()

// 判断是否已经存在了
if exists {
println(`键已存在`)
} else {
println(`新建注册表键`)
}

// 写入:32位整形值
key.SetDWordValue(`32位整形值`, uint32(123456))
// 写入:64位整形值
key.SetQWordValue(`64位整形值`, uint64(123456))
// 写入:字符串
key.SetStringValue(`CITConfPath12`, `C:\Users\fen\AppData\Local\`)
// 写入:字符串数组
key.SetStringsValue(`字符串数组`, []string{`hello`, `world`})
// 写入:二进制
key.SetBinaryValue(`二进制`, []byte{0x11, 0x22})

// 读取:字符串
s, _, _ := key.GetStringValue(`CITConfPath12`)
println(s)

//// 读取:一个项下的所有子项
//keys, _ := key.ReadSubKeyNames(0)
//for _, key_subkey := range keys {
// // 输出所有子项的名字
// println(key_subkey)
//}

//// 创建:子项
//subkey, _, _ := registry.CreateKey(key, `子项`, registry.ALL_ACCESS)
//defer subkey.Close()

// 删除:子项
// 该键有子项,所以会删除失败
// 没有子项,删除成功
//registry.DeleteKey(key, `子项`)
}

 

goLang 操作windows注册表_小码农的博客-CSDN博客_go 操作注册表 https://blog.csdn.net/liangguangchuan/article/details/52669417

Go语言:操作注册表 - 简书 https://www.jianshu.com/p/b7a5406eb732

 

posted @ 2021-11-24 18:29  papering  阅读(346)  评论(0编辑  收藏  举报