Re: Проблема с использованием RegQueryValueEx
От: Кирпа В.А. Украина  
Дата: 27.05.05 06:27
Оценка:
Здравствуйте, PabloHuares, Вы писали:

PH>Добрый день всем. Подскажите пожалуйста, как можно обойти следующую проблему:

PH>С помощью API-функции для получения значений ключей реестра RegQueryValueEx
PH>пытаюсь взять значение из переменной Path, но столкнулся с тем, что если значение
PH>ключа >24 символов, то функция не отрабатывает:
PH> HKEY hNewKey;
PH> DWORD dwType;
PH> DWORD dwBytes=1024;;
PH> char path[1024];

PH>if(RegOpenKeyEx( HKEY_LOCAL_MACHINE, "SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Environment",0, KEY_ALL_ACCESS, &hNewKey)==ERROR_SUCCESS)

PH> {
PH> if(RegQueryValueEx( hNewKey, "Path", NULL, &dwType, (LPBYTE)path, &dwBytes )!=ERROR_SUCCESS)
PH> {
PH> AfxMessageBox("Не удалось считать данные ключа Path реестра");
PH> };
PH> RegCloseKey( hNewKey );
PH> }
PH> else
PH> {
PH> AfxMessageBox("Не удалось открыть ключ Path реестра");
PH> };

PH>Я думаю, что что-то не так с типами переменных path, dwType или dwBytes, но как решить вопрос — не пойму никак!


PH>Спасибо!


Хотелось бы узнать чему же равен результат возвращаемый RegQueryValueEx (то что он не равен ERROR_SUCCESS и так понятно)
!0xDEAD
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.