امروز یکم حال داشتم .
یه چند خطی براتون مینویسم.
آنتی ویروسی که من نوشتم : شامل قسمتهای متعددی بود . کم کم براتون میگم.
در مرحله اول و میشه بگی بزرگترین مشکلی که من باهاش مواجه بودم . مسیر فعلی کاربر بود.
یعنی باید میفهمیدم که کاربر الان کجای ویندوز اکسپلورر هست.
اول بار با هوک این کار رو کردم. اما مشکل بزرگی که بود . برای ویندوزهای 32 و 64 بیتی هر کدوم باید یه روش پیاده میشد. که دردسر زیادی داشت.
دیدم خیلی اذیت میکنه . چون هوک من یوزر مد بود و ثبات نداشت.
در مرحله بعدی هوک رو گزاشتم کنار و اومدم سراغ استفاده از Api ها برای بدست آوردن مسیر.
اونم تا حدودی جواب داد . اما بازم ثبات نداشت. تا یکی از دوستان یه فیلتردرایور نوشته بود ، که از ایشون خریداری شد و مورد استفاده قرار گرفت.
در مرحله بعدی : مسیری رو که کاربر ، در اون بود رو داشتیم ، یه FindeFile میکردیم و Md5 فایلها رو بدست می آورم و با بانک اطلاعاتی که داشتم ، کوئری میگرفتم . اگه تو بانک بود ، یه صفحه طراحی شده بود که بالا میومد و اعلام میکرد یه ویروس پیدا کرده (یادش بخیر).
اما باز اینجا کلی مشکل به وجود میومد :
1- فایلهایی که حجمشون بالا بود ، کلی زمان میبرد که md5 بگیریم ازشون.
2- نیاز نبود همه نوع فایل رو md5 بگیریم . اما چون من ناشی بودم ، همه رو میگرفتم.
3- اگه کاربر میرفت تو یه شاخه ای مثل system32 و با حجم عظیمی از فایلها مواجه میشد ، تا برنامه میومد md5 بگیره و بعد کوئری ، کاربر 4 تا مسیر دیگه هم رفته بود
و ...
که کم کم روش کار کردم و مشکلات رو مرتفع کردیم.
اگه وقت شد. کم کم راهی رو که رفتم براتون میگم.
موفق باشید.