DDetours es una biblioteca que le permite conectar funciones API de Delphi y Windows. Proporciona una manera fácil de insertar y quitar el gancho.
¿Qué hay de nuevo en la versión 2.2?
- Soporte para FPC y versiones anteriores de Delphi, especialmente D7.
- Soporte para sección recursiva.
- Soporte para parámetros/etiquetas personalizadas para cada función de trampolín.
- Consulte CHANGELOG para conocer los cambios completos.
Características :
- Soporta arquitectura x86 y x64 .
- Admite múltiples ganchos para una sola función.
- Compatible con Delphi 7/2005-2010/XE-Rio (Delphi 10.3).
- Soporta Lázaro/FPC.
- Admite función recursiva dentro de la función de gancho.
- Admite métodos de interfaz de enlace por MethodName o MethodIndex .
- Admite parches COM vtable .
- Admite métodos de objetos de enlace.
- Permite llamar a la función original a través de la función Trampoline/NextHook .
- Soporte COM / Interfaces / win32api .
- Seguro para hilos para enganchar y desenganchar.
- Se admite dirección de 64 bits.
- La biblioteca no utiliza ninguna biblioteca externa.
- La biblioteca puede insertar y quitar el gancho en cualquier momento.
- La biblioteca contiene la biblioteca InstDecode, que le permite decodificar instrucciones de la CPU (x86/x64).
Este proyecto contiene dos subproyectos: biblioteca DDetours e InstDecode *.
La biblioteca InstDecode es una biblioteca que puede decodificar ambas instrucciones (x86/x64). Puedes considerarlo como una pequeña rutina de desmontaje. Puede decodificar instrucciones y obtener información sobre la instrucción (tamaño de la instrucción, desplazamiento, datos inmediatos, dirección de salto, etc.) sin mostrar mnemónicos, lo que la hace muy rápida y de tamaño muy pequeño.
Estas dos bibliotecas fueron codificadas en lenguaje Pascal puro con Delphi XE7.
Consulte la página Wiki para obtener más información sobre cómo utilizar la biblioteca.
Por favor, si encuentra algún error, no dude en informarlo.