Données typées
L’infrastructure d’extension EngExtCpp fournit quelques classes pour aider à manipuler la mémoire de la cible. La classe ExtRemoteData décrit un petit morceau de mémoire de la cible. Si le type de cette mémoire est connu, il est appelé données typées et est décrit par les objets ExtRemoteTyped .
Les listes Windows peuvent être itérées à l’aide d’ExtRemoteList et, si le type des objets de la liste est connu, ExtRemoteTypedList.
Note Comme les objets client dans ExtExtension, les instances de ces classes ne sont valides que lorsque la bibliothèque d’extensions est utilisée pour exécuter une commande d’extension ou mettre en forme une structure pour la sortie. En particulier, ils ne doivent pas être mis en cache. Pour plus d’informations sur la validité des objets clients, consultez Objets client et moteur, .
Données distantes
Les données distantes doivent être gérées à l’aide de la classe ExtRemoteData. Cette classe est un wrapper autour d’une petite section de la mémoire d’une cible. ExtRemoteData récupère automatiquement la mémoire et encapsule d’autres requêtes courantes avec des méthodes de levée.
Données typées à distance
Si le type des données distantes est connu, il doit être géré à l’aide de la classe ExtRemoteTyped . Cette classe est un objet de données distantes amélioré qui comprend les données typées avec des informations de type à partir de symboles. Il est initialisé sur un objet particulier par symbole ou cast, après quoi il peut être utilisé comme un objet du type donné.
Listes distantes
Pour gérer les listes distantes, utilisez la classe ExtRemoteList . Cette classe peut être utilisée pour une liste liée de manière unique ou doublement liée. Si la liste est doublement liée, il est supposé que le pointeur précédent suit immédiatement le pointeur suivant. La classe contient des méthodes qui peuvent itérer sur la liste et récupérer des nœuds à la fois vers l’avant et vers l’arrière. ExtRemoteList peut également être utilisé avec des listes null ou circulaires.
Listes typées à distance
Pour gérer les listes distantes lorsque le type des nœuds de la liste est connu, utilisez la classe ExtRemoteTypedList . Il s’agit d’une version améliorée d’ExtRemoteList. En plus des fonctionnalités de base d’ExtRemoteList, ExtRemoteTypedList détermine automatiquement les décalages de lien à partir des informations de type.