I've managed to fix all the w2k / nt problems i had with visualasm, but there's still one little oddity maybe some1 can help me with :) all the colours / key definitions etc are stored in the registry, and I'm noticing that in w2k these are not being loaded :( I'm stroing them at : HKEY_CURRENT_USER\Software\Nothing Ent\VisualASM does w2k perhaps do things a bit differently ? thanks (again) Entro-P
win2k doesn't do it differently: it just does it according to the rules. If it refuses to load the registry keys, that means your assumption about the apis is incorrect. More specifically, beware of the argument that specifies the length/size of the data.
Hi, I also encounter that I can not use HKEY_CURRENT_USER in the way I did it before. Starting regedit I saw that there is a long number entry !? So, I change my programs and use HKEY_USER. Perhaps someone have more infos ... so long Test
hmm, it's strange, here some source .. sRegPath db "Software\Nothing Ent\VisualASM",0 . . INVOKE RegOpenKeyEx, HKEY_CURRENT_USER, ADDR sRegPath, NULL, KEY_ALL_ACCESS, ADDR hKey fails with eax containing --> 5 odd Entro-P
Error 5 == Access denied This is another example where win9x is sloppy in enforcing the rules. If you check RegCreateKeyEx info in win32 api reference carefully, you will find this line: "An application cannot create a key under HKEY_USERS or HKEY_LOCAL_MACHINE" And look at the access mask you used: KEY_ALL_ACCESS => Combination of KEY_QUERY_VALUE, KEY_ENUMERATE_SUB_KEYS, KEY_NOTIFY, KEY_CREATE_SUB_KEY, KEY_CREATE_LINK, and KEY_SET_VALUE access. As you can see, it includes KEY_CREATE_SUB_KEY which clearly violates the rule above. Win9x swallows KEY_ALL_ACCESS without any complaint but NT/2k won't accept it. I usually use KEY_WRITE + KEY_READ + KEY_SET_VALUE.