如何在lua中递归地使用Windows注册表?

Moo*_*ker 2 windows registry recursion lua

我来自linux的土地,所以请耐心等待.

我想递归地浏览Windows注册表.到目前为止,我所做的就是获得各个键的值

> require 'luacom'
> sh = luacom.CreateObject "WScript.Shell"
> = sh:RegRead "HKCU\\Console\\ColorTable01"
8388608
Run Code Online (Sandbox Code Playgroud)

但是看不到迭代注册表节点的方法......

fur*_*urq 5

如果您需要使用Lua执行Windows特定的任何操作,您的第一个调用端口应该是winapi库; 在这种情况下,您可以使用open_reg_key()Regkey:get_keys()枚举注册表项,如下所示:

require "winapi"
local key, err = winapi.open_reg_key [[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows]]
local t = key:get_keys()
for k,v in ipairs(t) do print(k,v) end
-- 1       CurrentVersion
-- 2       HTML Help
-- ...
Run Code Online (Sandbox Code Playgroud)