|
|
@@ -0,0 +1,75 @@
|
|
|
+# winos
|
|
|
+
|
|
|
+The windows system operation module is a built-in module, no need to use [import](/api/scripts/builtin-modules/import) to import,
|
|
|
+you can directly call its interface in the script scope.
|
|
|
+
|
|
|
+## winos.version
|
|
|
+
|
|
|
+- Get windows system version
|
|
|
+
|
|
|
+The version returned is the semver semantic version object
|
|
|
+
|
|
|
+```lua
|
|
|
+if winos.version():ge("win7") then
|
|
|
+ - ...
|
|
|
+end
|
|
|
+
|
|
|
+if winos.version():ge("6.1") then
|
|
|
+ - ...
|
|
|
+end
|
|
|
+```
|
|
|
+
|
|
|
+In addition, it can also support the direct judgment of the windows version name. The mapping rules are as follows:
|
|
|
+
|
|
|
+```
|
|
|
+nt4 = "4.0"
|
|
|
+win2k = "5.0"
|
|
|
+winxp = "5.1"
|
|
|
+ws03 = "5.2"
|
|
|
+win6 = "6.0"
|
|
|
+vista = "6.0"
|
|
|
+ws08 = "6.0"
|
|
|
+longhorn = "6.0"
|
|
|
+win7 = "6.1"
|
|
|
+win8 = "6.2"
|
|
|
+winblue = "6.3"
|
|
|
+win81 = "6.3"
|
|
|
+win10 = "10.0"
|
|
|
+```
|
|
|
+
|
|
|
+## winos.registry_keys
|
|
|
+
|
|
|
+- Get the list of registry builds
|
|
|
+
|
|
|
+Support through pattern matching, traverse to obtain the registry key path list, `*` is single-level path matching, `**` is recursive path matching.
|
|
|
+
|
|
|
+```lua
|
|
|
+local keypaths = winos.registry_keys("HKEY_LOCAL_MACHINE\\SOFTWARE\\*\\Windows NT\\*\\CurrentVersion\\AeDebug")
|
|
|
+for _, keypath in ipairs(keypaths) do
|
|
|
+ print(winos.registry_query(keypath .. ";Debugger"))
|
|
|
+end
|
|
|
+```
|
|
|
+
|
|
|
+## winos.registry_values
|
|
|
+
|
|
|
+- Get a list of registry value names
|
|
|
+
|
|
|
+Support to obtain the value name list of the specified key path through pattern matching, and the string after the `;` is the specified key name pattern matching string.
|
|
|
+
|
|
|
+```lua
|
|
|
+local valuepaths = winos.registry_values("HKEY_LOCAL_MACHINE\\SOFTWARE\\xx\\AeDebug;Debug*")
|
|
|
+for _, valuepath in ipairs(valuepaths) do
|
|
|
+ print(winos.registry_query(valuepath))
|
|
|
+end
|
|
|
+```
|
|
|
+
|
|
|
+## winos.registry_query
|
|
|
+
|
|
|
+- Get the registry value
|
|
|
+
|
|
|
+Get the value under the specified registry path, if the value name is not specified, then get the default value of the key path
|
|
|
+
|
|
|
+```lua
|
|
|
+local value, errors = winos.registry_query("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\AeDebug")
|
|
|
+local value, errors = winos.registry_query("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\AeDebug;Debugger")
|
|
|
+```
|