Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Как прочитать список подключей из реестра (http://forum.oszone.net/showthread.php?t=30450)

Rover 07-06-2003 16:26 208686

Как прочитать список подключей из реестра HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Internet Account Manager\\Accounts ?
интересуют только 000...... По идее нужно использовать ф-цию RegEnumKeyEx, но что-то у меня не получается.

PS. Visual C++ 6.0

vasketsov 09-06-2003 20:33 208687

А у меня получается.
Код показывай.

Crew 17-06-2003 22:07 208688

Я подмажусь с вашего позволения :). У меня этот код работает только под Win98-WinMe в win2000 уже не работает, хотя данные в реестр заносит, и они там правильные :(
Код:


DWORD dwDisposition,dwType=REG_DWORD;
LPBYTE lpData;
DWORD *cbData=NULL;
DWORD *xExtensionSet=0xFFFFF;
HKEY hNewKey;
 
 LPDWORD lpdwData;
 lpdwData=(DWORD*)GlobalAlloc(GPTR,sizeof(DWORD));
 *lpdwData=xExtensionSet;
 lpData=(BYTE*)lpdwData;
 
try{
::RegCreateKeyEx(HKEY_CURRENT_USER,
"Software\\Flash-Tmp-Eraser",
0,
"",
REG_OPTION_NON_VOLATILE,
KEY_WRITE,
NULL,
&hNewKey,
&dwDisposition);
 
 
 if(dwDisposition==REG_CREATED_NEW_KEY){
 ::RegSetValueEx(hNewKey, *// handle of key to set value for
 "Extension", *// address of value to set
 0, *// reserved
 REG_DWORD, *// flag for value type
 lpData, *// address of value data
 sizeof(DWORD) *// size of value data
 );
 }
 cbData=sizeof(DWORD);
if (dwDisposition==REG_OPENED_EXISTING_KEY){
::RegQueryValueEx(hNewKey,
"Extension",
0,
&dwType,
lpData,
&cbData);
}
::RegCloseKey(hNewKey);
}
catch(CException *e)
{
MessageBox("Error");
e->Delete();
}
.........
GlobalFree(lpData);

возвращает всегда то число, которое было, т.е. никогда его не меняет

Crew 20-06-2003 00:42 208689

Аа как сделать, чтоб работало всегда?
у меня только одно чмсло в реестре хранится, и вытащить не могу, мсожет параметр безопасности надо указывать какой-нибудь?


Время: 08:31.

Время: 08:31.
© OSzone.net 2001-