用RegEnumValue的問題

hakeman 2003-09-12 12:42:22
返回一個234 ERROR_MORE_DATA 怎麼解決?
...全文
55 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
dz_w 2003-09-12
  • 打赏
  • 举报
回复
你的第三或第七个参数分配的空间不足
LONG RegEnumValue(HKEY hKey, DWORD dwIndex,LPTSTR lpValueName,LPDWORD lpcbValueName,LPDWORD lpReserved,LPDWORD lpType,LPBYTE lpData,LPDWORD lpcbData);
这里是lpValueName或lpData
hakeman 2003-09-12
  • 打赏
  • 举报
回复
就是這樣的問題,謝謝指教
dz_w 2003-09-12
  • 打赏
  • 举报
回复
第四和第八个参数重新赋值
如:
HKEY hKey;
char szClass[20];
char szValue[100];
DWORD dwNameSize = 20;
DWORD dwValueSize = 100;
DWORD dwType;
int i = 0;
//你的操作,主要是打开注册表
while(RegEnumValue(hKey, i ++, szClass, &dwNameSize, 0, &dwType, (BYTE *)szValue, &dwValueSize) == ERROR_SUCCESS)
{
//你的操作
dwNameSize = 20;
dwValueSize = 100;
}
hakeman 2003-09-12
  • 打赏
  • 举报
回复
好像不是的,我查了一下發現如果我連續讀取兩個value就會有這樣的錯誤,怎麼解決?

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧