API注册表操作获取已安装软件列表及属性

易语言 2020-07-19 17:11:25

API注册表操作获取已安装软件列表及属性

有什么用大家自己琢磨吧,我只是写个例程介绍上述两个API的用法。不写注释是因为真正要学API的自然会去分析代码,想出每个参数到底是做什么的。

RegOpenKeyA (2147483650, #注册表目录_软件, phkResult)
子项 = 取空白文本 (256) ' 分配256字节缓冲区
.判断循环首 (RegEnumKeyA (phkResult, i, 子项, 256) = 0)
程序名 = 取文本注册项 (4, #注册表目录_软件 + 子项 + “\DisplayName”, )
安装目录 = 子文本替换 (取文本注册项 (4, #注册表目录_软件 + 子项 + “\InstallLocation”, ), #引号, “”, , , 假)
.如果真 (程序名 ≠ “” 且 安装目录 ≠ “”)
表项索引 = 超级列表框.插入表项 (, 程序名, , , , )
超级列表框.置标题 (表项索引, 1, 取文本注册项 (4, #注册表目录_软件 + 子项 + “\Publisher”, “未知发布者”))
超级列表框.置标题 (表项索引, 2, 安装目录)
超级列表框.置标题 (表项索引, 3, 取文本注册项 (4, #注册表目录_软件 + 子项 + “\DisplayVersion”, ))
超级列表框.置标题 (表项索引, 4, _安装日期处理 (取文本注册项 (4, #注册表目录_软件 + 子项 + “\InstallDate”, )))
.如果真结束
i = i + 1
.判断循环尾 ()