1
Mhook
إذا كنت تشارك في هذا المجال ، فأنت تعلم بالفعل أن Detours Microsoft Research تحدد بشكل كبير المعيار عندما يتعلق الأمر بتثبيت واجهة برمجة التطبيقات.
- تطبيق مجاني
- Windows
إذا كنت تشارك في هذا المجال ، فأنت تعلم بالفعل أن Detours Microsoft Research تحدد إلى حد كبير المعيار عندما يتعلق الأمر بتثبيت واجهة برمجة التطبيقات.لماذا لا نحصل على مقارنة بسرعة بعد ذلك؟DETOURS VS.MHOOK Detours متاح مجانًا بترخيص غير تجاري ولكنه يدعم النظام الأساسي x86 فقط.يمكن أيضًا تحويل Detours للاستخدام التجاري الذي يوفر لك أيضًا دعم x64 الكامل ، لكنك لن ترى إلا شروط الترخيص بعد توقيع NDA.يتم توزيع Mhook مجانًا بموجب ترخيص MIT مع دعم x86 و x64.يحول الالتفافات عن الدعم الرسمي لمرفقات الخطافات في تطبيق قيد التشغيل.بالطبع ، أنت حر في القيام بذلك - ولكن إذا انتهى بك الأمر إلى حدوث تعطل عشوائي هنا أو هناك ، فيمكنك إلقاء اللوم على نفسك فقط.كان من المفترض أن يكون Mhook قادرًا على ضبط وإزالة السنانير في التطبيقات قيد التشغيل - وهذا هو كل ما تحتاج إليه في العالم الحقيقي.يبذل قصارى جهده لتجنب الكتابة فوق التعليمات البرمجية التي قد تكون قيد التنفيذ بواسطة مؤشر ترابط آخر.التفاف يدعم ربط المعاملات و unhooking.وهذا يعني ، وضع مجموعة من السنانير في نفس الوقت مع نهج كل شيء أو لا شيء.سيتم تعيين الخطافات فقط إذا كان يمكن تعيين كل منهم ، وإلا فإن المكتبة سوف تتراجع عن أي تغييرات تم إجراؤها.Mhook لا يفعل هذا.أخيرًا ، Mhook كسول جدًا عندما يتعلق الأمر بإدارة الذاكرة للترامبولين التي يستخدمها.يخصص Detours كتل الذاكرة حسب الحاجة ، ويستخدم منطقة البيانات الناتجة لتخزين أكبر عدد ممكن من الترامبولين داخل.Mhook ، من ناحية أخرى ، يستخدم مكالمة واحدة إلى VirtualAlloc لكل ربط يتم تعيينها.يحتاج كل خطاف إلى أقل من 100 بايت من سعة التخزين ، لذا فإن هذا يعد هدرًا للغاية ، نظرًا لأن VirtualAlloc ينتهي باستيلاء 64 كيلو بايت من مساحة العنوان الافتراضية للعملية في كل مرة يقوم Mhook باستدعائها.(ستكون الذاكرة الفعلية المخصصة صفحة واحدة تعتبر أيضًا مضيعة للفضول.) في النهاية ، ربما لا يكون هذا مهمًا حقًا ، إلا إذا كنت تقوم بتعيين عدد كبير جدًا من الخطافات في التطبيق.أيضا ، هذا سهل جدا للإصلاح.