获取已安装软件列表 - RegistryGetInstalledSoftware
函数简介
获取系统已安装软件列表,返回包含软件信息的JSON数组。
接口名称
RegistryGetInstalledSoftware
DLL调用
int64_t RegistryGetInstalledSoftware(int64_t instance);
参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| instance | 长整数型 | OLAPlug对象的指针,由 CreateCOLAPlugInterFace 接口生成。 |
示例
int64_t instance = CreateCOLAPlugInterFace();
int64_t jsonPtr = RegistryGetInstalledSoftware(instance);
if (jsonPtr != 0) {
const char* json = (const char*)jsonPtr;
// JSON格式示例:
// [{"name":"Microsoft Office","version":"16.0","publisher":"Microsoft Corporation","installDate":"20230101"}]
FreeStringPtr(instance, jsonPtr);
}
DestroyCOLAPlugInterFace(instance);
返回值
长整数型。成功返回JSON数组字符串指针,失败返回 0。返回的字符串指针需调用 FreeStringPtr 释放内存。
返回的JSON数组中每个软件对象包含以下字段:
name:软件名称version:版本号publisher:发行商installDate:安装日期(YYYYMMDD格式)installLocation:安装位置(可选)uninstallString:卸载命令(可选)
注意事项
- 该函数会同时扫描32位和64位软件列表。
- 扫描过程可能耗时较长,建议在后台线程执行。
- 某些便携软件可能不会出现在列表中。
- 部分字段可能为空,取决于软件的安装信息完整性。
