Консультация № 15343
16.12.2004, 19:11
0.00 руб.
0 1 1
Проблемма:
не могу записать в реестр параметр "HideFileExt"=dword:00000001
Почему-то записывается параметр в двоичном формате "HideFileExt"=hex(4):01
Заранее благодарен.
Valentin
neofit@swn.boyarka.kiev.ua


Приложение:
SetFileMode proc state:DWORD, _text:DWORDLOCAL res:DWORD invoke RegCreateKey,HKEY_CURRENT_USER,ADDR szFileSection,ADDR res .if eax==ERROR_SUCCESS .if state invoke lstrlen,_text invoke RegSetValueEx,res,ADDR szSSFile,NULL,REG_DWORD,_text,eax .else invoke RegDeleteValue,res,ADDR szSSFile .endif invoke RegCloseKey,res .endif retSetFileMode endpгде:szSSFile db "HideFileExt",0_text DWORD 1

Обсуждение

Неизвестный
16.12.2004, 20:06
общий
это ответ
Здравствуйте, Савенок Валентин Николаевич!
Зачем вы получаете длину числа =) с помощью strlen?
_text у вас это DWORD равный 1, неправильно пытаться получить его длину с помощью strlen, поэтому вместо eax, подставляйте в RegSetValueEx число 4 (см. приложение), т.к. длина типа DWORD - 4 байта.

Приложение:
invoke RegSetValueEx,res,ADDR szSSFile,NULL,REG_DWORD, _text, 4
Форма ответа