flat assembler
Message board for the users of flat assembler.
Index
> Windows > Using LoadLibraryA n GetProcAddre without import kernel32 |
Author |
|
khatch 06 Dec 2011, 15:23
Hello "MinhHung"
i am using windows 7 32 bit and i assembled it successfully but when execute the binary main.exe i got this error : Problem signature: Problem Event Name: APPCRASH Application Name: main.exe Application Version: 0.0.0.0 Application Timestamp: 4ede2025 Fault Module Name: main.exe Fault Module Version: 0.0.0.0 Fault Module Timestamp: 4ede2025 Exception Code: c0000005 Exception Offset: 00001123 OS Version: 6.1.7600.2.0.0.256.1 Locale ID: 12289 Additional Information 1: 0a9e Additional Information 2: 0a9e372d3b4ad19135b953a78882e789 Additional Information 3: 0a9e Additional Information 4: 0a9e372d3b4ad19135b953a78882e789 and i think the problem is at line (93)d your source in function "init" and this is the screenshot of "ollydbg" . Can you explain this function more if you don`t could fix it on windows 7 32 bit REGARD.
_________________ Jesus Christ is our Savior |
|||||||||||
06 Dec 2011, 15:23 |
|
typedef 06 Dec 2011, 16:52
use the address $200000 to get the process environment structure. There, you will find handles to GDI, console input/output, current directory dll path, image path and many more.
|
|||
06 Dec 2011, 16:52 |
|
MinhHung 08 Dec 2011, 13:17
"khatch" thanks!
now i try to make it can run in win7 32bit "typedef" i can't read at this address $200000 |
|||
08 Dec 2011, 13:17 |
|
hopcode 11 Dec 2011, 13:33
Hi MinhHung,
there is no speed gain using that proc. it is actually very slow. look here for 2 different binary search algo GetProcAddress. http://sites.google.com/site/x64lab/home/notes-on-x64-windows-gui-programming/customizing-the-getprocaddress my code, 64 bit, and lingo's code,32bit (below attached in thread) though lingo resolves forward reference in a standard way. Cheers .:mrk[hopcode] .:x64lab:. group http://groups.google.com/group/x64lab site http://sites.google.com/site/x64lab _________________ ⠓⠕⠏⠉⠕⠙⠑ |
|||
11 Dec 2011, 13:33 |
|
f0dder 11 Dec 2011, 21:00
If you don't import from kernel32, your app won't work under Windows 2000 (you can import from a DLL that ends up importing from kernel32, though, it doesn't have to be a direct import). For later OSes, kernel32 is always injected, whether you end up importing from it or not.
|
|||
11 Dec 2011, 21:00 |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.