本文介绍了如何使用 golang 从 windows/registry 返回默认值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我只想用 Golang 在 Windows 注册表中返回一个(默认)字符串值

I just want to return a (Default) string value in Windows registry with Golang

k, err := registry.OpenKey(registry.LOCAL_MACHINE, `SOFTWARE\Microsoft\Windows NT\CurrentVersion`, registry.QUERY_VALUE)
if err != nil {
    log.Fatal(err)
}
defer k.Close()

s, _, err := k.GetStringValue("(Default)") // It won't work
// s, _, err := k.GetStringValue("SystemRoot") // This is worked
if err != nil {
    log.Fatal(err)
}
fmt.Printf("Windows system root is %q\n", s)

我在 CMD 管理模式下运行它,但没有注意到

I run it in CMD admin mode but there was noting to see

推荐答案

我找到了!

k, err := registry.OpenKey(registry.LOCAL_MACHINE, `SOFTWARE\Microsoft\Windows NT\CurrentVersion`, registry.ALL_ACCESS)
s, _, err := k.GetStringValue("") // The blank one refers to (Default)

这篇关于如何使用 golang 从 windows/registry 返回默认值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-28 19:08