سلام دوستان !!
با اسمبلی چه جوری میشه حجم یک فایل رو پیدا کرد ؟
یه تابع هست به نام GetFileSize اما نمی دونم چه جوری از پارامتر هاش استفاده کنم !!!!
این دوتا پارامتر بالا رو خودم الکی push کردم :دی
فقط میخوام داخل olly استفاده کنم...
تشکر.
http://www.daniweb.com/forums/thread63061.html
قبلش باید با تابع CreateFile هندل فایل را بگیری
تابع getfilesize دوتا ورودی داره که دومیش مهم نیست ، اولی مهمه ( همون هندل فایل مورد نظر)
وقتی این این تابع فراخوانی بشه مقدار سایز فایل توی رجیستر EAX قرار میگیره
سلام جوکر
میگم چه جوری توایع رو include کنم ؟
من یه فایل exe دارم و می خوام وقتی اجرا میشه سایز یه فایلی رو هم MessageBoxA کنه !
رو که مینویسم مشکلی نداره و میشناسه تابع رو !!!
اما CreateFile نه!!!
کد:
Include windows.inc
Include user32.inc
Include kernel32.inc
IncludeLib user32.lib
IncludeLib kernel32.lib
اینا رو چه جوری باید ضمیمه کنم تو olly ?
تشکر
اسم هدرش را موقع نوشتن CALL کامل بنویس ، ایشالا olly هم میشناسه :)
Kernel32.CreateFile
حروف کوچیک و بزرگ را رعایت کن.
دور جور تابع داریم
Kernel32.CreateFileA
Kernel32.CreateFileW
CreateFileW (Unicode) and CreateFileA (ANSI)
اگه اسم فایلت فارسی نیست همون a هم جواب میده
وقتی DLL قبلا اینکلود شده برای توابع دیگه ای که استفاده کرده مثل همین GetFileSize یعنی بقیه توابع را هم با نوشتن اسم این dll قبلش میتونی راحت لود کنی و نگران اینکلود کردن و آپدیت ImportTable نباشی.
اگر .CreateFileA در IAT شما موجود نباشد بهترين روش استفاده از LordPE هست
در قسمت PeEditor بر روي directories كليك كنيد سپس در پنجره ظاهر شده بر روي كليد كنار Import Table كليك كنيد و در پنجره جديد با يك كليك راست گزينه add import را انتخاب كنيد و تابع مورد نظر خودتون را وارد كنيد