ايران ويج

نسخه‌ی کامل: کمک برای WriteProcessMemory
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2
سلام
بقیه همه چیرو گفتن ولی یه چیز میمونه اگه OpenProcess هندل از پروسه بگیره و صفر بر نگردونه که مشکلی نیست
ولی اگر اینطور نشه به احتمال زیاد پروست privilege لازم رو نداره در مورد SeDebugPrivilege یکم جستجو کنی به نتیجه میرسی

این لینک رو ببین:
کد:
http://support.microsoft.com/kb/185215

و این، البته کدش برای ++C هست:
کد:
http://msdn.microsoft.com/en-us/library/aa446619(VS.85).aspx

وی بیم زیاد جالب نیست وگرنه برات تبدیلش میکردم
سلام
خوب هستيد
فكر كنم اين جواب بده
به اميد ديدار
از همه برای راهنمای های که کردن ممنونم برم ببینم چی میشه.حالا شاید درست شد.
(۰۶-اردیبهشت-۱۳۸۸, ۰۰:۱۶:۱۳)saeedsmk نوشته است: [ -> ]سلام
خوب هستيد
فكر كنم اين جواب بده
به اميد ديدار

بله جواب داد.میشه در باره کاری که کردی یک توضیح کوچیک بدی.تا متوجه بشم.خیلی جالب کار کردی.
اگر توضیح بدی ممنون میشم در ضمن میشه یک کاری کرد که چیزی که تو Text مینویسی هر 1 دهم ثانیه در
پروسه تزریغ کرد.اگر میشه بگو.Biggrin
سلام
خوب هستيد
كاري كه كردم اين بود كه ادرس استرينگ رو از توي حافظه توسط يك ديباگر استخراج كردم . سپس اون پروسس رو پيدا كردم با
FindWindow
و يعد از اون با تايع زير هندل رو به شناسه پروسس تبديل كردم (pid)
GetWindowThreadProcessId
و بعد با دستور OpenProcess با اجازه دسترسي كلي اون رو باز كردم ( نحوه درست تعريف اين تابع api در فايل براي وي بي موجوده )
بعد استرينگ اي كه مي خواستم تزريق كنم رو با يك تابع اي كه خودم نوشتم هم به يونيكد و هم به اريه اي از بايت ها تغيير دادم و بعد با استفاده از يك حلقه و تابع WriteProcessMemory توي حافظه برنامه نوشتم (چون يك بايت يك بايت مينوشتم و عدد به تابع مورد نظر ارسال ميكردم ديگه لازم نبود حافظه اي از برنامه در حال اجرا الوكيت كنم . )
و بد پروسه اي كه باز كردم بستم
بله ميشه
به اين صورت كه شما وقتي پيد رو باز كردي در يك متغيير عمومي منطقه اي ( locak var) و يا يك متغيير سراسري
( global ويا پابليك ) ذخيره كنيد .
سپس توي يك تايمر كه مدت زماني اون 100 ميلي ثانيه است قسمت باز كردن و نوشتن در حافظه رو تكرار كنيد
بهتره قبل از نوشتن با دستور readProcessMemory چك كنيد ايا حافظه مورد نظر تغيير كرده و يا نه اگر تغيير كرده عمل نوشتن رو انجام بديد

به اميد ديدار
صفحه‌ها: 1 2