Mozda se malo zaebavam al opet.. poanta svega je (bez obzira sto iscakcem iz teme do kraja) sto su svi kompajleri jako lose dizajnirani i napravljeni.. recimo, napravi u delphiu obican program koji ce sadrzavat obican prozor (formu) preko VCL-a i dobit ces program od 300kb... :D
Dok to mozes dobit obicnim popunjavanjem WNDCLASSEX strukture i pozivanjem CreateWindowEx apija :P
I ne kontam zasto je potrebno ovo recimo:
Code:
ABORTPROC typedef DWORD
ACCESS_MASK typedef DWORD
ACMDRIVERENUMCB typedef DWORD
ACMDRIVERPROC typedef DWORD
ACMFILTERCHOOSEHOOKPROC typedef DWORD
ACMFILTERENUMCB typedef DWORD
ACMFILTERTAGENUMCB typedef DWORD
ACMFORMATCHOOSEHOOKPROC typedef DWORD
ACMFORMATENUMCB typedef DWORD
ACMFORMATTAGENUMCB typedef DWORD
NET_API_STATUS typedef DWORD
API_RET_TYPE typedef DWORD
APPLET_PROC typedef DWORD
BOOL typedef DWORD
CALINFO_ENUMPROC typedef DWORD
COLORREF typedef DWORD
;;; CONST typedef DWORD ; naming conflist with MASM reserve word
;;; CRITICAL_SECTION typedef DWORD ; naming conflist with structure
CTRYID typedef DWORD
DATEFMT_ENUMPROC typedef DWORD
DESKTOPENUMPROC typedef DWORD
DLGPROC typedef DWORD
DRAWSTATEPROC typedef DWORD
EDITWORDBREAKPROC typedef DWORD
ENHMFENUMPROC typedef DWORD
ENUMRESLANGPROC typedef DWORD
ENUMRESNAMEPROC typedef DWORD
ENUMRESTYPEPROC typedef DWORD
FARPROC typedef DWORD
FILE_SEGMENT_ELEMENT typedef DWORD
FONTENUMPROC typedef DWORD
GOBJENUMPROC typedef DWORD
GRAYSTRINGPROC typedef DWORD
HACCEL typedef DWORD
HANDLE typedef DWORD
HBITMAP typedef DWORD
HBRUSH typedef DWORD
HCOLORSPACE typedef DWORD
HCONV typedef DWORD
HCONVLIST typedef DWORD
HCURSOR typedef DWORD
HDC typedef DWORD
HDDEDATA typedef DWORD
HDESK typedef DWORD
HDROP typedef DWORD
HDWP typedef DWORD
HENHMETAFILE typedef DWORD
HFILE typedef DWORD
HFONT typedef DWORD
HGDIOBJ typedef DWORD
HGLOBAL typedef DWORD
HHOOK typedef DWORD
HICON typedef DWORD
HIMAGELIST typedef DWORD
HIMC typedef DWORD
HINSTANCE typedef DWORD
HKEY typedef DWORD
HKL typedef DWORD
HLOCAL typedef DWORD
HMENU typedef DWORD
HMETAFILE typedef DWORD
HMODULE typedef DWORD
HMONITOR typedef DWORD
HOOKPROC typedef DWORD
HPALETTE typedef DWORD
HPEN typedef DWORD
HRGN typedef DWORD
HRSRC typedef DWORD
HSZ typedef DWORD
HTREEITEM typedef DWORD
HWINSTA typedef DWORD
HWND typedef DWORD
;;; INT typedef DWORD; naming conflist with MASM reserve word
IPADDR typedef DWORD
LANGID typedef DWORD
LCID typedef DWORD
LCSCSTYPE typedef DWORD
LCSGAMUTMATCH typedef DWORD
LCTYPE typedef DWORD
LINEDDAPROC typedef DWORD
LOCALE_ENUMPROC typedef DWORD
LONG typedef DWORD
LPARAM typedef DWORD
LPBOOL typedef DWORD
LPBYTE typedef DWORD
LPCCHOOKPROC typedef DWORD
LPCFHOOKPROC typedef DWORD
LPCOLORREF typedef DWORD
LPCRITICAL_SECTION typedef DWORD
LPCSTR typedef DWORD
LPCTSTR typedef DWORD
LPCVOID typedef DWORD
LPCWSTR typedef DWORD
LPDWORD typedef DWORD
LPFIBER_START_ROUTINE typedef DWORD
LPFRHOOKPROC typedef DWORD
LPHANDLE typedef DWORD
LPHANDLER_FUNCTION typedef DWORD
LPINT typedef DWORD
LPLONG typedef DWORD
LPOFNHOOKPROC typedef DWORD
LPOLESTR typedef DWORD
LPCOLESTR typedef DWORD
LPPAGEPAINTHOOK typedef DWORD
LPPAGESETUPHOOK typedef DWORD
LPPRINTHOOKPROC typedef DWORD
LPPROGRESS_ROUTINE typedef DWORD
LPSETUPHOOKPROC typedef DWORD
LPSTR typedef DWORD
LPSTREAM typedef DWORD
LPTHREAD_START_ROUTINE typedef DWORD
LPTSTR typedef DWORD
LPVOID typedef DWORD
LPWORD typedef DWORD
LPWSTR typedef DWORD
LRESULT typedef DWORD
;;; LUID typedef DWORD ; name conflict with structure
MCIDEVICEID typedef DWORD
PBOOL typedef DWORD
PBOOLEAN typedef DWORD
PBYTE typedef DWORD
PCHAR typedef DWORD
PCRITICAL_SECTION typedef DWORD
PCSTR typedef DWORD
PCTSTR typedef DWORD
PCWCH typedef DWORD
PCWSTR typedef DWORD
PDWORD typedef DWORD
PFLOAT typedef DWORD
PFNCALLBACK typedef DWORD
PHANDLE typedef DWORD
PHANDLER_ROUTINE typedef DWORD
PHKEY typedef DWORD
PINT typedef DWORD
PLCID typedef DWORD
PLONG typedef DWORD
PLUID typedef DWORD
PROPENUMPROC typedef DWORD
PROPENUMPROCEX typedef DWORD
PSHORT typedef DWORD
PSTR typedef DWORD
PTBYTE typedef DWORD
PTCHAR typedef DWORD
PTIMERAPCROUTINE typedef DWORD
PTSTR typedef DWORD
PUCHAR typedef DWORD
PUINT typedef DWORD
PULONG typedef DWORD
PUSHORT typedef DWORD
PVOID typedef DWORD
PWCHAR typedef DWORD
PWORD typedef DWORD
PWSTR typedef DWORD
REGISTERWORDENUMPROC typedef DWORD
REGSAM typedef DWORD
SC_HANDLE typedef DWORD
SC_LOCK typedef DWORD
SCODE typedef DWORD
SENDASYNCPROC typedef DWORD
SERVICE_STATUS_HANDLE typedef DWORD
SOCKET typedef DWORD
TIMEFMT_ENUMPROC typedef DWORD
TIMERPROC typedef DWORD
UINT typedef DWORD
ULONG typedef DWORD
WINSTAENUMPROC typedef DWORD
WNDENUMPROC typedef DWORD
WNDPROC typedef DWORD
WPARAM typedef DWORD
YIELDPROC typedef DWORD
...
...
ne zelim nastavit jer ima na tone dalje
E sad, koja je poanta uvodjenja 10000000000000 razlictih imena tipova kada se sve temelji na DWORD-u? kao da sam windows, njegovi apiji i native apiji i samo programiranje za njega nije dovoljno komplicirano pa se tako uvodi 100000000000 razlicitih tipova za koje po mome nema potrebe jer uopce ne olaksavaju programiranje vec samo zbunjuju...
A za ovaj reversing apija.. nista od toga, odgodio sam to za par godina a do tada cu detaljno razradit windows internalije i rad kompajlera, linkera, i svega ostalog ..
hvala na pomoci al nema druge nego se prihvatit posla... i steta sto je ovaj dio foruma mrtav.. i to isto necu nikad shvatit al .. nije vazno :)
poz