1
Mhook
Ak sa rozhodnete pre túto oblasť, budete už vedieť, že Detours od spoločnosti Microsoft Research do značnej miery určuje meradlo, pokiaľ ide o pripojenie k rozhraniu API.
- Bezplatná
- Windows
Ak sa rozhodnete pre túto oblasť, budete už vedieť, že objavy z prieskumu Microsoft Research do značnej miery nastavujú referenčnú hodnotu, pokiaľ ide o zapojenie API.Prečo potom rýchlo nezískame porovnanie?DETOURS VS.MHOOK Detours je k dispozícii zadarmo s komerčnou licenciou, ale podporuje iba platformu x86.Obchádzky môžu byť licencované aj na komerčné použitie, čo vám tiež poskytuje plnú podporu x64, ale podmienky licencie získate až po podpísaní NDA.Mhook je voľne distribuovaný na základe licencie MIT s podporou pre x86 a x64.Obchádzka sa vyhýba oficiálnej podpore pripojenia háčikov k bežiacej aplikácii.Samozrejme, môžete to urobiť zadarmo - ale ak nakoniec dôjde k náhodnej havárii tu alebo tam, môžete viniť len seba.Mhook bol určený na to, aby dokázal nastaviť a odstrániť háčiky v bežiacich aplikáciách - koniec koncov, to je to, čo potrebujete pre skutočný svet.Snaží sa zabrániť prepísaniu kódu, ktorý by mohol byť vykonávaný iným vláknom.Obchádzka podporuje transakčné zapojenie a odhalenie;to znamená, nastavenie zväzku háčikov súčasne s prístupom „všetko alebo nič“.Háčiky sa nastavia, iba ak je možné všetky nastaviť, inak knižnica vráti všetky vykonané zmeny.Mhook to nerobí.Nakoniec, Mhook je dosť lenivý, pokiaľ ide o správu pamäte pre trampolíny, ktoré používa.Obchádzka podľa potreby prideľuje bloky pamäte a výslednú dátovú oblasť využíva na uloženie čo najväčšieho množstva trampolín.Na druhej strane Mhook používa jedno volanie na VirtualAlloc na nastavený hák.Každý hák potrebuje menej ako 100 bajtov úložného priestoru, takže je to veľmi zbytočné, pretože VirtualAlloc končí pri získaní Mokok 64 kB z virtuálneho adresového priestoru procesu.(Skutočná alokovaná pamäť bude jedna stránka, ktorá je tiež dosť zbytočná.) Na konci to však pravdepodobne nebude záležať, pokiaľ v aplikácii nenastavíte veľký počet háčikov.Aj to je veľmi ľahké opraviť.