Типизированные данные

Платформа расширения EngExtCpp предоставляет несколько классов для управления памятью целевого объекта. Класс ExtRemoteData описывает небольшую часть памяти целевого объекта. Если тип этой памяти известен, он называется типизированными данными и описывается объектами ExtRemoteTyped .

Списки Windows можно перебирать с помощью ExtRemoteList и, если тип объектов в списке известен, ExtRemoteTypedList.

Заметка Как и клиентские объекты в ExtExtension, экземпляры этих классов допустимы только в то время как библиотека расширений используется для выполнения команды расширения или форматирования структуры для выходных данных. В частности, они не должны кэшироваться. Дополнительные сведения о допустимости клиентских объектов см. в разделе "Клиентские объекты" и "Обработчик".

Удаленные данные

Удаленные данные должны обрабатываться с помощью класса ExtRemoteData. Этот класс представляет собой оболочку вокруг небольшого раздела памяти целевого объекта. ExtRemoteData автоматически извлекает память и упаковывает другие распространенные запросы с помощью методов вызова.

Удаленные типизированные данные

Если тип удаленных данных известен, его следует обрабатывать с помощью класса ExtRemoteTyped . Этот класс представляет собой усовершенствованный удаленный объект данных, который распознает данные, типизированные с использованием информации о типах из символов. Он инициализируется для определенного объекта символом или приведением, после чего его можно использовать как объект заданного типа.

Удаленные списки

Для обработки удаленных списков используйте класс ExtRemoteList . Этот класс можно использовать для последовательно связанного или удвоительно связанного списка. Если список вдвойне связан, предполагается, что предыдущий указатель сразу же следует следующему указателю. Класс содержит методы, которые могут выполнять итерацию по списку и извлекать узлы в прямом и обратном направлении. ExtRemoteList можно использовать как с заканчивающимися нулем, так и с циклическими списками.

Удаленные типизированные списки

Чтобы обрабатывать удаленные списки при известном типе узлов в списке, используйте класс ExtRemoteTypedList . Это расширенная версия ExtRemoteList. Помимо базовой функциональности ExtRemoteList, ExtRemoteTypedList автоматически определяет смещение ссылок из сведений о типе.