1
Mhook
Bu alanda dabblerseniz, o zaman zaten Microsoft Araştırma's Detours'un API kancalama söz konusu olduğunda karşılaştırmayı belirlediğini bileceksiniz.
- Ücretsiz
- Windows
Bu alanda dabblerseniz, o zaman zaten Microsoft Araştırma's Detours'un API kancalama söz konusu olduğunda karşılaştırmayı belirlediğini bileceksiniz.O zaman neden hızlı bir şekilde karşılaştırma yapmıyoruz?DETOURS VS.MHOOK Detours ticari olmayan bir lisansla ücretsiz olarak kullanılabilir, ancak yalnızca x86 platformunu destekler.Detours, ticari kullanım için de lisanslanabilir, bu da size tam x64 desteği verir, ancak lisans koşullarını yalnızca bir NDA imzaladıktan sonra görebilirsiniz.Mhook, x86 ve x64 desteğiyle MIT lisansı altında serbestçe dağıtılır.Detours, çalışan bir uygulamaya kanca takılmasını resmi olarak desteklemekten kaçınır.Tabii ki, bunu yapmakta özgürsünüz - ancak burada veya orada rastgele bir çarpışmaya neden olursanız, sadece kendinizi suçlayabilirsiniz.Mhook, çalışan uygulamalarda kancaları ayarlayabiliyor ve kaldırabiliyordu - sonuçta, gerçek dünyada buna ihtiyacınız var.Başka bir iş parçacığı tarafından yürütülmekte olan kodun üzerine yazmaktan kaçınmak için elinden geleni yapar.Detours işlemsel kancayı ve kancayı çıkarmayı destekler;yani bir ya da hiç yaklaşımıyla bir grup kancayı aynı anda ayarlamak.Kancalar yalnızca tümü ayarlanabiliyorsa ayarlanır, aksi takdirde kütüphane yapılan değişiklikleri geri alır.Mhook bunu yapmaz.Son olarak, Mhook kullandığı trambolinlerin hafızasını yönetme konusunda oldukça tembeldir.Detours, gerektiğinde bellek blokları tahsis eder ve sonuçta elde edilen veri alanını, sığabileceği sayıda trambolin depolamak için kullanır.Öte yandan Mhook, ayarlanan kanca başına bir VirtualAlloc çağrısı kullanır.Her kanca 100 bayttan daha az depolama alanına ihtiyaç duyar, bu nedenle bu çok israftır, çünkü VirtualAlloc, Mhook her aradığında işlemin sanal adres alanından 64K alır.(Gerçek tahsis edilen bellek, oldukça boşa harcanan tek bir sayfa olacaktır.) Sonunda, bir uygulamada çok sayıda kanca ayarlamadığınız sürece, bu muhtemelen önemli değildir.Ayrıca, bunu düzeltmek çok kolaydır.