Question

Est-il possible de substituer des fonctions système, comme cela est possible sous Linux et Solaris à l'aide de LD_PRELOAD

Par exemple, en définissant la variable d'environnement: LD_PRELOAD = / chemin / vers / mymalloc.so

J'aurais mes fonctions de remplacement malloc au lieu du runtime C déjà installé dans les bibliothèques système. Toutes les autres fonctions de la DLL système fonctionneraient normalement.

Était-ce utile?

La solution

Microsoft Research dispose d'une bibliothèque appelée Detours qui vous permet d'intercepter Appels de l'API Win32.

  

Detours est une bibliothèque pour l’instrumentation de fonctions Win32 arbitraires sur les ordinateurs x86, x64 et IA64. Detours intercepte les fonctions Win32 en réécrivant le code en mémoire pour les fonctions cibles. Le package Detours contient également des utilitaires permettant de lier des DLL et des segments de données arbitraires (appelés charges utiles) à n’importe quel fichier binaire Win32.

Autres conseils

Si Détours (comme mentionné précédemment) n'est pas une option, vous pouvez consulter WinAPI. Remplacer . Il est activement maintenu. Notez que seule la version 32 bits est disponible.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top