Класс ExtRemoteData (engextcpp.hpp)
Класс ExtRemoteData предоставляет оболочку вокруг небольшого раздела памяти целевого объекта. ExtRemoteData автоматически извлекает память и предоставляет ряд удобных методов.
Класс ExtRemoteData включает следующие конструкторы и методы:
class ExtRemoteData
{
public:
PCSTR m_Name;
ULONG64 m_Offset;
bool m_ValidOffset;
ULONG m_Bytes;
ULONG64 m_Data;
bool m_ValidData;
bool m_Physical;
ULONG m_SpaceFlags;
};
- m_Name
- Имя, данное этому экземпляру ExtRemoteData. Это имя используется для предоставления значимых сообщений об ошибках и задается конструктором ExtRemoteData::ExtRemoteData.
- m_Offset
- Расположение в памяти целевого объекта (виртуальной или физической) области памяти, представленной этим экземпляром ExtRemoteData. Его можно задать с помощью конструктора ExtRemoteData::ExtRemoteData или методов ExtRemoteData::Set(Typed) или ExtRemoteData::Set(Offset Bytes).
- m_ValidOffset
-
Указывает, является ли расположение m_Offsetдопустимым. Если m_ValidOffset имеет значение
false
, расположение недопустимо и большинство методов для этого объекта не будут работать. В этом случае можно вызвать методы ExtRemoteData::Set(Typed) или ExtRemoteData::Set(Offset Bytes) для изменения m_Offset на допустимое расположение. - m_Bytes
- Размер (в байтах) области памяти, представленной этим объектом. Его можно задать с помощью конструктора ExtRemoteData::ExtRemoteData или методов ExtRemoteData::Set(Typed) или ExtRemoteData::Set(Offset Bytes).
- m_Data
- Кэшированное содержимое области памяти, указанной этим экземпляром ExtRemoteData. Задание этого элемента является необязательным. Если область памяти большая, она не будет кэширована.
- m_ValidData
-
Указывает, допустимы ли кэшированные данные m_Data . Если m_ValidData имеет значение
false
, кэшированные данные недопустимы и большинство методов для этого объекта не будут работать. В этом случае для обновления кэшированных данных можно вызвать метод ExtRemoteData::Read . - m_Physical
-
Указывает, находится ли m_Offset расположение в виртуальном адресном пространстве целевого объекта или в его физическом адресном пространстве. Если m_Physical имеет значение
true
, m_Offsetрасположение находится в физическом адресном пространстве целевого объекта. Если m_Physical имеет значениеfalse
, m_Offset расположение находится в виртуальном адресном пространстве целевого объекта. - m_SpaceFlags
-
Флаги DEBUG_PHYSICAL_XXX, используемые для доступа к физической памяти целевого объекта. Эти флаги используются только в том случае , если m_Physical имеет значение
true
. Описание этих флагов см. в описании метода ReadPhysical2 .
Методы
Класс ExtRemoteData содержит следующие методы.
ExtRemoteData::Clear Удобный метод Clear предоставляется классом ExtRemoteData, который предоставляет оболочку для небольшой части памяти целевого объекта. |
ExtRemoteData::ExtRemoteData Конструктор ExtRemoteData создает новый экземпляр класса ExtRemoteData. Для указанной области памяти содержимое считывает из целевого объекта. |
ExtRemoteData::ExtRemoteData Конструктор ExtRemoteData(PCSTR,ULONG64,ULONG) создает новый экземпляр класса ExtRemoteData. |
ExtRemoteData::ExtRemoteData Конструктор ExtRemoteData(ULONG64,ULONG) создает экземпляр класса ExtRemoteData. Для указанной области памяти содержимое считывает из целевого объекта. |
ExtRemoteData::GetBoolean Метод GetBoolean возвращает логическую версию объекта ExtRemoteData, представляющую содержимое памяти целевого объекта. |
ExtRemoteData::GetChar Метод GetChar возвращает версию CHAR объекта ExtRemoteData, представляющую содержимое памяти целевого объекта. |
ExtRemoteData::GetData Метод GetData возвращает содержимое памяти целевого объекта, представленное объектом ExtRemoteData. |
ExtRemoteData::GetDouble Метод GetDouble возвращает двойную версию объекта ExtRemoteData, представляющую содержимое памяти целевого объекта. |
ExtRemoteData::GetFloat Метод GetFloat возвращает версию объекта ExtRemoteData с плавающей точкой, представляющую содержимое памяти целевого объекта. |
ExtRemoteData::GetLong Метод GetLong возвращает длинную версию объекта ExtRemoteData, представляющую содержимое памяти целевого объекта. |
ExtRemoteData::GetLong64 Метод GetLong64 возвращает long64-версию объекта ExtRemoteData, представляющую содержимое памяти целевого объекта. |
ExtRemoteData::GetLongPtr Метод GetLongPtr возвращает целочисленную версию со знаком (расширенную до LONG64) объекта ExtRemoteData, представляющую содержимое памяти целевого объекта. Размер целого числа без знака из целевого объекта совпадает с размером указателя на целевом объекте. |
ExtRemoteData::GetPtr Метод GetPtr возвращает указатель из целевой версии памяти объекта ExtRemoteData, который представляет содержимое памяти целевого объекта. Размер целого числа без знака из целевого объекта совпадает с размером указателя на целевом объекте. |
ExtRemoteData::GetShort Метод GetShort возвращает версию SHORT объекта ExtRemoteData, представляющую содержимое памяти целевого объекта. |
ExtRemoteData::GetStdBool Метод GetStdBool возвращает логическую версию объекта ExtRemoteData, представляющую содержимое памяти целевого объекта. |
ExtRemoteData::GetString Метод GetString(ExtBuffer<char,ULONG>) считывает строку, завершающуюся null, из памяти целевого объекта. |
ExtRemoteData::GetString Метод GetString(ExtBuffer<WCHAR,ULONG>) считывает строку, завершающуюся значением NULL, из памяти целевого объекта. |
ExtRemoteData::GetString Метод GetString считывает строку, завершающуюся значением NULL, из памяти целевого объекта. Строка находится в начале области, представленной объектом ExtRemoteData. |
ExtRemoteData::GetString Метод GetString(PWSTR,ULONG,ULONG,bool,PULONG) считывает строку, завершающуюся null, из памяти целевого объекта. |
ExtRemoteData::GetUchar Метод GetUChar возвращает версию UCHAR объекта ExtRemoteData, представляющую содержимое памяти целевого объекта. |
ExtRemoteData::GetUlong Метод GetUlong возвращает ULONG-версию объекта ExtRemoteData, представляющую содержимое памяти целевого объекта. |
ExtRemoteData::GetUlong64 Метод GetUlong64 возвращает ULONG64 версию объекта ExtRemoteData, представляющую содержимое памяти целевого объекта. |
ExtRemoteData::GetUlongPtr Метод GetUlongPtr возвращает целочисленную версию без знака (расширенную до ULONG64) объекта ExtRemoteData, представляющую содержимое памяти целевого объекта. |
ExtRemoteData::GetUshort Метод GetUshort возвращает версию USHORT объекта ExtRemoteData, представляющую содержимое памяти целевого объекта. |
ExtRemoteData::GetW32Bool Метод GetW32Bool возвращает версию BOOL объекта ExtRemoteData, представляющую содержимое памяти целевого объекта. |
ExtRemoteData::Read Метод Read считывает содержимое памяти целевого объекта, представленное объектом ExtRemoteData, а затем кэширует данные. |
ExtRemoteData::ReadBuffer Метод ReadBuffer считывает данные из памяти целевого объекта. Данные находятся в начале области, представленной объектом ExtRemoteData. Однако размер данных может отличаться. |
ExtRemoteData::Set Метод Set(constDEBUG_TYPED_DATA) задает область памяти целевого объекта, представленную объектом ExtRemoteData. |
ExtRemoteData::Set Метод Set задает область памяти целевого объекта, представленную объектом ExtRemoteData. |
ExtRemoteData::SetBoolean Удобный метод SetBoolean предоставляется классом ExtRemoteData, который предоставляет оболочку для небольшой части памяти целевого объекта. |
ExtRemoteData::SetChar Удобный метод SetChar предоставляется классом ExtRemoteData, который предоставляет оболочку для небольшой части памяти целевого объекта. |
ExtRemoteData::SetData Удобный метод SetData предоставляется классом ExtRemoteData, который предоставляет оболочку для небольшой части памяти целевого объекта. |
ExtRemoteData::SetDouble Удобный метод SetDouble предоставляется классом ExtRemoteData, который предоставляет оболочку для небольшой части памяти целевого объекта. |
ExtRemoteData::SetFloat Удобный метод SetFloat предоставляется классом ExtRemoteData, который предоставляет оболочку для небольшой части памяти целевого объекта. |
ExtRemoteData::SetLong Удобный метод SetLong предоставляется классом ExtRemoteData, который предоставляет оболочку для небольшой части памяти целевого объекта. |
ExtRemoteData::SetLong64 Удобный метод SetLong64 предоставляется классом ExtRemoteData, который предоставляет оболочку для небольшой части памяти целевого объекта. |
ExtRemoteData::SetLongPtr Удобный метод SetLongPtr предоставляется классом ExtRemoteData, который предоставляет оболочку для небольшой части памяти целевого объекта. |
ExtRemoteData::SetPtr Удобный метод SetPtr предоставляется классом ExtRemoteData, который предоставляет оболочку для небольшой части памяти целевого объекта. |
ExtRemoteData::SetShort Удобный метод SetShort предоставляется классом ExtRemoteData, который предоставляет оболочку для небольшой части памяти целевого объекта. |
ExtRemoteData::SetStdBool Удобный метод SetStdBool предоставляется классом ExtRemoteData, который предоставляет оболочку для небольшой части памяти целевого объекта. |
ExtRemoteData::SetUchar Удобный метод SetUchar предоставляется классом ExtRemoteData, который предоставляет оболочку для небольшой части памяти целевого объекта. |
ExtRemoteData::SetUlong Удобный метод SetUlong предоставляется классом ExtRemoteData, который предоставляет оболочку для небольшой части памяти целевого объекта. |
ExtRemoteData::SetUlong64 Удобный метод SetUlong64 предоставляется классом ExtRemoteData, который предоставляет оболочку для небольшой части памяти целевого объекта. |
ExtRemoteData::SetUlongPtr Удобный метод SetUlongPtr предоставляется классом ExtRemoteData, который предоставляет оболочку для небольшой части памяти целевого объекта. |
ExtRemoteData::SetUshort Удобный метод SetUshort предоставляется классом ExtRemoteData, который предоставляет оболочку для небольшой части памяти целевого объекта. |
ExtRemoteData::SetW32Bool Удобный метод SetW32Bool предоставляется классом ExtRemoteData, который предоставляет оболочку для небольшой части памяти целевого объекта. |
ExtRemoteData::Write Метод Write записывает данные, кэшированные объектом ExtRemoteData, в область памяти целевого объекта, представленную этим объектом. |
ExtRemoteData::WriteBuffer Метод WriteBuffer записывает данные в память целевого объекта. Данные находятся в начале области, представленной объектом ExtRemoteData. Однако размер данных может отличаться. |
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | engextcpp.hpp (включая Engextcpp.hpp) |