با سلام خدمت دوستان
کسی میدونه چطور میشه دسترسی به یه فایل رو که توسط یه برنامه نامعلوم بازه آزاد کرد(مثل همون کاری که unlocker) انجام میده؟
با سلام خدمت دوستان
کسی میدونه چطور میشه دسترسی به یه فایل رو که توسط یه برنامه نامعلوم بازه آزاد کرد(مثل همون کاری که unlocker) انجام میده؟
همون طور که میدانید برنامه Unlocker برای آزاد سازی فایل اول برنامه ای که فایل رو باز کرده رو پیدا می کنه وبعد از این کار برنامه مورد نظر را می بنده وبعد فایل رو آزاد می کنه . من همین راه رو فقط می دونم شاید راهایی دیگه ای هم وجود داشته باشه.
بله راهش همینه که برنامه رو پیدا کنیم ولی چطور؟بستنش کار ساده ای است.کسی راه حلی نداره؟
لطفاً به اسم یکی از این برنامه های UnLocker اشاره کنید !
چرا اشاره؟اینم برنامش
دوست عزیز فکرکنم با این تابع api به شه این کار رو کرد
Private Declare Function RegisterServiceProcess Lib "kernel32.dll" (ByVal dwProcessID As Long, ByVal dwType As Long) As Long
این کار خیلی پیچیده تر از این حرفاست که توی یه تاپیک بخواد در موردش بحث بشه
با VB هم بهتره فراموشش کنید
به طور کلی اول باید کل دستگیرههای(Handle) موجود سیستم فهرست بشن
بررسی بشه که آیا دستگیرهی بازی برای فایل مورد نظر وجود داره؟
اگه هست فهرست Process ها تهیه بشه
Processی که این دستگیره مربوط به اون هست باز بشه
داخلش یه کد تزریق بشه که دستگیره رو ببنده
یا دستگیره توی Process فعلی منتقل بشه
دستگیره بسته بشه
این تازه توضیحش بود
برنامه نویسی اون خیلی پیچیده تر از این حرفاست
برای راه حل بهتره از کدهای آماده مثل همین Unlocker استفاده کنید
و فایل اجرایی اونا رو کنار برنامهتون قرار بدید
[QUOTE=oVERfLOW;574234]این کار خیلی پیچیده تر از این حرفاست که توی یه تاپیک بخواد در موردش بحث بشه
با VB هم بهتره فراموشش کنید
خوب این درست نیست که صورت مسئله رو پاک کنیم.به هر حال ازبابت تئوری ارائه شده از طرف شما ممنونم.
به راه بادیه رفتن به از نشستن باطل اگر مراد نیابم به قدر وسع بکوشم
دوست عزیز بیشتر وقتها نام پروسه یک فایل بر اساس نام فایل است می تونید با بدست آوردن نام فایل پروسه اونو ببندید.این کار برای تمام فایلها امکان پزیره بجز فایلهایی که زیر نظر سرویسهای ویندوز هستند.
عزیزم شما اگه هدفتون نوشتن برنامهای مثل Unlocker هست، حق با شماست
ولی اگه هدفتون استفاده از خروجی توی یه برنامهی دیگه هست که این طور فکر میکنم
گفتم که بهتره وقتتون رو روی کارهای با ارزشتر صرف کنید
و بی دلیل نخواید کلی مطلب بخونید و وقت بذارید آخرش هم هیچی...
هدفم پیدا کردن روشی برای بستن فایل های در حال استفاده توسط سایر برنامه ها و سپس بستن پروسه ای که اون هارو باز کرده از داخل برنامه خودم توسط کد نویسی بود که قسمت اعظمش با راهنمایی شما در مورد کار با هندل پروسه ها حل شد.یه تابع پیدا کردم که هندل پروسه والد رو برای یه پروسه یا فایل پیدا میکنه. بستنش رو هم که از قبل میدونستم. تقریبا کار تموم شده است.
از همه ممنونم
آخرین ویرایش به وسیله Babak.Hassanpour : یک شنبه 23 فروردین 1388 در 15:26 عصر
اگه ميشه تابع رو يا برنامه كاملشو بگذاريد