20 lines
463 B
Go
20 lines
463 B
Go
|
|
//go:build windows
|
|||
|
|
|
|||
|
|
package main
|
|||
|
|
|
|||
|
|
import "golang.org/x/sys/windows/registry"
|
|||
|
|
|
|||
|
|
// rawMachineID 读取 Windows 的 MachineGuid(系统安装时生成,重装才会变)。
|
|||
|
|
func rawMachineID() string {
|
|||
|
|
k, e := registry.OpenKey(registry.LOCAL_MACHINE, `SOFTWARE\Microsoft\Cryptography`, registry.QUERY_VALUE|registry.WOW64_64KEY)
|
|||
|
|
if e != nil {
|
|||
|
|
return ""
|
|||
|
|
}
|
|||
|
|
defer k.Close()
|
|||
|
|
v, _, e := k.GetStringValue("MachineGuid")
|
|||
|
|
if e != nil {
|
|||
|
|
return ""
|
|||
|
|
}
|
|||
|
|
return v
|
|||
|
|
}
|