بسم الله الرحمن الرحيم
السلام عليكم
اذا ممكن مثال في عمل ملف .dll في الاسمبلي
وشكرا
بسم الله الرحمن الرحيم
السلام عليكم
اذا ممكن مثال في عمل ملف .dll في الاسمبلي
وشكرا

اللهم إني أعوذ بك من علم لا ينفع ، ومن قلب لا يخشع ، ومن نفس لا تشبع ، ومن دعوة لا يستجاب لها
من الامثلة الموجودة مع fasm :
; DLL creation example format PE GUI 4.0 DLL entry DllEntryPoint include 'win32a.inc' section '.code' code readable executable proc DllEntryPoint hinstDLL,fdwReason,lpvReserved mov eax,TRUE ret endp ; VOID ShowErrorMessage(HWND hWnd,DWORD dwError); proc ShowErrorMessage hWnd,dwError local lpBuffer:DWORD lea eax,[lpBuffer] invoke FormatMessage,FORMAT_MESSAGE_ALLOCATE_BUFFER+FORMAT_MESSAGE_FROM_SYSTEM,0,[dwError],LANG_NEUTRAL,eax,0,0 invoke MessageBox,[hWnd],[lpBuffer],NULL,MB_ICONERROR+MB_OK invoke LocalFree,[lpBuffer] ret endp ; VOID ShowLastError(HWND hWnd); proc ShowLastError hWnd invoke GetLastError stdcall ShowErrorMessage,[hWnd],eax ret endp section '.idata' import data readable writeable library kernel,'KERNEL32.DLL',\ user,'USER32.DLL' import kernel,\ GetLastError,'GetLastError',\ SetLastError,'SetLastError',\ FormatMessage,'FormatMessageA',\ LocalFree,'LocalFree' import user,\ MessageBox,'MessageBoxA' section '.edata' export data readable export 'ERRORMSG.DLL',\ ShowErrorMessage,'ShowErrorMessage',\ ShowLastError,'ShowLastError' section '.reloc' fixups data discardable
mov eax, dword ptr ds:[0xffdf0308]
jmp dword ptr [eax+0xfc]
مشكوور اخ GamingMasteR على الاجابة
هل في في طريقة بال16bit
تم تعديل هذه المشاركة بواسطة ayash في 17 سبتمبر 2010 في 09:48

اللهم إني أعوذ بك من علم لا ينفع ، ومن قلب لا يخشع ، ومن نفس لا تشبع ، ومن دعوة لا يستجاب لها
لست أدري ، لم ابحث عن هذا الامر من قبل ![]()
تم تعديل هذه المشاركة بواسطة GamingMasteR في 17 سبتمبر 2010 في 12:30
mov eax, dword ptr ds:[0xffdf0308]
jmp dword ptr [eax+0xfc]