proc SetStringValue rPath,\
rValue,\
rParm
local hKey:DWORD
lea eax,[hKey]
invoke RegOpenKeyEx, HKEY_LOCAL_MACHINE, [rPath], 0, KEY_WRITE, [hKey]
invoke lstrlen,[rValue]
invoke RegSetValueEx, [hKey], [rParm], 0, REG_SZ, [rValue], eax
invoke RegCloseKey, [hKey]
invoke LocalFree,[hKey]
ret
endp
Функция в DLL'ке не правильно работает, а в EXE'шнике все ОК...
Код:
Пишу на FASM'е, решил разобраться з написанием динамических библиотек. В программе етот код работает, а в библиотеке - нет. Помогите разобраться.
Трудно сказать... попробуй убрать LocalFree (кстати помойму это тут и не нужно)
Код:
invoke RegOpenKeyEx,HKLM,[rPath],0,KEY_WRITE, [hKey]
а вот так:
Код:
invoke RegOpenKeyEx,HKLM,[rPath],0,KEY_WRITE, hKey
Все, тему можно закрывать.