LONG ClusterRegEnumKey(
HKEY hKey,
DWORD dwIndex,
LPWSTR lpName,
LPDWORD lpcbName
);
参数说明:
- hKey:要枚举子项的注册表项的句柄,可以是 HKEY_LOCAL_MACHINE 或从 ClusterRegOpenKey 获得的句柄。
- dwIndex:子项的索引,从0开始。
- lpName:用于接收子项名称的缓冲区。
- lpcbName:输入时为 lpName 缓冲区的大小(以字节为单位),输出时为实际写入缓冲区的字节数。
函数返回一个 LONG 类型的错误代码。如果函数成功,返回值为 ERROR_SUCCESS。
示例代码:
#include <windows.h>
#include <ClusAPI.h>
#include <iostream>
int main() {
HCLUSTER hCluster = OpenCluster(L"ClusterName");
if (hCluster != NULL) {
HKEY hKey = NULL;
DWORD dwIndex = 0;
WCHAR szName[MAX_PATH];
DWORD cbName = sizeof(szName);
// 打开要枚举子项的注册表项
LONG result = ClusterRegOpenKey(
hCluster,
L"Software\\MyClusterApp",
KEY_READ,
&hKey
);
if (result == ERROR_SUCCESS) {
// 成功打开注册表项,可以进行枚举子项操作
while (ClusterRegEnumKey(hKey, dwIndex, szName, &cbName) == ERROR_SUCCESS) {
std::wcout << L"Subkey: " << szName << std::endl;
dwIndex++;
cbName = sizeof(szName);
}
// 关闭注册表项
ClusterRegCloseKey(hKey);
}
CloseCluster(hCluster);
}
return 0;
}
此函数用于在群集注册表中枚举子项,而不是在本地注册表中。如果在本地注册表中枚举子项,请使用 RegEnumKeyEx 函数。
转载请注明出处:http://www.pingtaimeng.com/article/detail/24418/Win32 API/Clusapi.h/ClusterRegEnumKey