add default arg for read registry method

This commit is contained in:
HolographicHat
2022-03-26 20:51:54 +08:00
parent 408169da4e
commit d40c456494

View File

@@ -8,17 +8,21 @@ const getTimestamp = (d = new Date()) => {
return `${d.getUTCFullYear()}-${p(d.getUTCMonth() + 1)}-${p(d.getUTCDate())}T${p(d.getUTCHours())}:${p(d.getUTCMinutes())}:${p(d.getUTCSeconds())}.${p(d.getUTCMilliseconds())}Z` return `${d.getUTCFullYear()}-${p(d.getUTCMonth() + 1)}-${p(d.getUTCDate())}T${p(d.getUTCHours())}:${p(d.getUTCMinutes())}:${p(d.getUTCSeconds())}.${p(d.getUTCMilliseconds())}Z`
} }
const readRegistry = (path, key) => { const readRegistry = (path, key, def) => {
const i = cp.execSync(`reg query "${path}" /v ${key}`, { try {
encoding: "utf-8" const i = cp.execSync(`reg query "${path}" /v ${key}`, {
}).split("\n")[2].split(" ").filter(s => s.length > 0).map(s => s.trim()) encoding: "utf-8"
switch (i[1]) { }).split("\n")[2].split(" ").filter(s => s.length > 0).map(s => s.trim())
case "REG_SZ": switch (i[1]) {
return i[2] case "REG_SZ":
case "REG_DWORD": return i[2]
return parseInt(i[2]) case "REG_DWORD":
default: return parseInt(i[2])
throw "Unsupported" default:
return def
}
} catch (e) {
return def
} }
} }
@@ -44,8 +48,8 @@ const device = (() => {
timeZoneOffset: parseInt(osi[1]), timeZoneOffset: parseInt(osi[1]),
osBuild: `${osi[2]}.${readRegistry("HKLM\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion", "UBR")}`, osBuild: `${osi[2]}.${readRegistry("HKLM\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion", "UBR")}`,
osVersion: osi[2], osVersion: osi[2],
locale: readRegistry("HKCU\\Control Panel\\International", "LocaleName"), locale: readRegistry("HKCU\\Control Panel\\International", "LocaleName", "zh-CN"),
carrierCountry: readRegistry("HKCU\\Control Panel\\International\\Geo", "Name"), carrierCountry: readRegistry("HKCU\\Control Panel\\International\\Geo", "Name", "CN"),
sdkName: "appcenter.wpf.netcore", sdkName: "appcenter.wpf.netcore",
sdkVersion: "4.5.0", sdkVersion: "4.5.0",
osName: "WINDOWS", osName: "WINDOWS",