These are experiments about calling low level system functions
- Assembly program that manually writes import address table (IAT)
- for sdl3.dll, msvcrt.dll , user32.dll, kernel32.dll then
- shows how to call a function from these .dlls
- also writes macro for sprintf and messagebox combination
- Compile this code sdl3 must be placed same directory of output executable and requires a Flat Assembler
fasm.exe HelloSDL3.asm
- Python script that uses cffi for C declarations for Windows types
- then shows how to pass a pointer, integer, wide char, callback functions(WNDPROC) to other functions
- Creates a Win32 Window and Button inside it.
pip install cffipython HelloWindows.py- Button looks like modern windows style(not win98/xp) because python.exe itself has manifest file resource
- Python script that uses ctypes for loading sdl3.dll
- and also shows how to fill the fields according to functions return value and parameters
- Finally creates a blank sdl3 window
python HelloSDL3.py- sdl3.dll must be placed in Python's one of sys.path
- Python script uses ctypes for filling WNDCLASSA structure
- then passes Address of WNDCLASSA to RegisterClassA
- also shows how to declare a windows structure and how to fill it
python RegisterClass.py