社区
界面
帖子详情
用RegEnumValue的問題
hakeman
2003-09-12 12:42:22
返回一個234 ERROR_MORE_DATA 怎麼解決?
...全文
56
4
打赏
收藏
用RegEnumValue的問題
返回一個234 ERROR_MORE_DATA 怎麼解決?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用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就會有這樣的錯誤,怎麼解決?
易语言取系统启动信息
易语言取系统启动信息源码,取系统启动信息,RegOpenKey,Re
gEnum
Value
,RegCloseKey
易语言系统启动信息
易语言系统启动信息源码,系统启动信息,取系统启动信息,RegOpenKey,Re
gEnum
Value
,RegCloseKey
注册表查看编辑器 + 源码
windows自带的注册表编辑器并没有把所有的项都显示出来,出于好奇,自己写了个简易的注册表编辑器,以查看隐藏的东西~~ 界面跟自带的很像,里面的小图标都是从自带里导出来的。 具有的功能: 1.浏览键(key)、值(
value
); 2.插入、修改REG_SZ、REG_EXPAND_SZ、REG_MULTI_SZ、REG_DWORD、REG_DWORD_BIG_ENDIAN、REG_QWORD六种值类型(
value
)的名称跟数据; 3.删除所有类型的键值(
value
); 4.插入键(key),删除不含子键的键(key); 5.左侧树形窗口右键点击时是收缩节点,方便浏览; 6.自带的每个键它都会显示默认(就是名称为空的)键值(
value
),而我则是严格按照Re
gEnum
Value
的结果来显示; 通过使用并跟自带的比较后发现: XP系统下,自带的隐藏了HKEY_PERFORMANCE_DATA、HKEY_PERFORMANCE_TEXT、HKEY_PERFORMANCE_NLSTEXT的显示,不过这三个键都不含子键,只含值,不知为何,这三个键的默认键值打不开,提示参数不正确。需要注意的是,打开这三个键时,会有点卡。 WIN7下,自带的还隐藏了HKEY_PT的显示,里面似乎REG_QWORD类型的键值很多。 由于我的小程序查错步骤很多,一有错误就会显示出来(要么是弹出消息框,要么是在标题栏显示),因此发现了很多有趣的地方,比如:HKEY_LOCAL_MACHINE\SECURITY和HKEY_LOCAL_MACHINE\SAM\SAM的权限很高,连KEY_READ都打不开,因此自带的没显示这两个键的内容,不知道的还以为确实没内容,其实是注册表API函数打不开的缘故; 另外需要注意的是,打开HKEY_CLASSES_ROOT节点时,由于其子项很多,所以会卡住一会儿,请耐心等待。 里面有一个封装了操作注册表的类CRegKey。 里面还有一个截图软件,其两个附加功能或许对你日常生活有帮助,一个是VC的error lookup程序的功能,一个是表达式计算器的功能,你可以在其托盘隐藏时使用热键Ctrl+F8和Ctrl+F9打开、关闭,非常便捷; 里面还可以参考一下CTreeCtrl的Expand函数只能触发一次TVN_ITEMEXPANDING or TVN_ITEMEXPANDED消息问题的解决方法。 有问题联系:hastings1986@163.com
易语言枚举注册表
易语言枚举注册表源码,枚举注册表,取文本,取数值,取字节集,默认,Re
gEnum
KeyEx,Re
gEnum
Key,RegCreateKey,RegOpenKey,RegOpenKeyEx,RegCloseKey,Re
gEnum
Value
mycomdelphi
delphi编写的串口软件procedure EnumComPorts(Ports: TStrings); var KeyHandle: HKEY; ErrCode, Index: Integer;
Value
Name, Data: string;
Value
Len, DataLen,
Value
Type: DWORD; TmpPorts: TStringList; begin ErrCode := RegOpenKeyEx( HKEY_LOCAL_MACHINE, 'HARDWARE\DEVICEMAP\SERIALCOMM', 0, KEY_READ, KeyHandle); if ErrCode <> ERROR_SUCCESS then Exit; // raise EComPort.Create(CError_RegError, ErrCode); TmpPorts := TStringList.Create; try Index := 0; repeat
Value
Len := 256; DataLen := 256; SetLength(
Value
Name,
Value
Len); SetLength(Data, DataLen); ErrCode := Re
gEnum
Value
( KeyHandle, Index, PChar(
Value
Name), Cardinal(
Value
Len), nil, @
Value
Type, PByte(PChar(Data)), @DataLen); if ErrCode = ERROR_SUCCESS then begin SetLength(Data, DataLen); TmpPorts.Add(Data); Inc(Index); end else if ErrCode <> ERROR_NO_MORE_ITEMS then exit; //raise EComPort.Create(CError_RegError, ErrCode); until (ErrCode <> ERROR_SUCCESS) ; TmpPorts.Sort; Ports.Assign(TmpPorts); finally RegCloseKey(KeyHandle); TmpPorts.Free; end; end;
界面
15,979
社区成员
115,896
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章