DkmILPushLocalVariablePseudoAddress Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Помещает в стек псевдо-адрес, представляющий локальную переменную IL и смещение в байтах в пределах этой переменной. При извлечении из стека в качестве адреса инструкции, которые обычно считывают или записывают память в отлаживаемый процесс, вместо этого считывают или записывают байты на локальной переменной IL и смещение, указанное в псевдо-Address. Допускается передача псевдо-адреса в стек, соответствующий локальной переменной, которая не существует или содержит меньше байтов, чем указано смещение. Однако если время фактического чтения или записи данных в псевдо-адресе истекло, то резервная локальная переменная должна существовать и иметь достаточно данных, чтобы охватывать всю операцию чтения или записи. (Операции чтения могут быть обрезаны в конце буфера, если указан Алловпартиалреад). Псевдо-адрес может использоваться в качестве операнда арифметической операции в следующих случаях: — Добавление целого числа в псевдо-Address. (Целое число будет добавлено к смещению) — вычитание целого числа из псевдо-адреса. (Целое число будет вычтено из смещения). — вычитание двух псевдо-адресов друг от друга с помощью одной и той же локальной переменной. (Результатом является разница в смещениях). — Сравнение псевдо-адреса со значением NULL. (Любой псевдо-адрес считается больше значения NULL. Если все байты равны нулю, операнд считается равным NULL.) -Сравнение двух псевдо-адресов на равенство. — Сравнение двух псевдо-адресов для неравенства при резервном копировании по той же переменной. (Смещение будет сравниваться). Псевдо-адреса можно также использовать с Дкмилдупликатетоп или сохранить в локальных переменных с помощью Дкмиллоад и Дкмилсаве. Не допускается чтение или запись данных в псевдо-адресе, однако, если резервная локальная переменная содержит другой псевдо-адрес. Псевдо-адреса могут возвращаться в виде результатов IL с помощью инструкции Дкмилретурнтоп. Полученный Дкмилевалуатионресулт можно определить как псевдо-адрес с помощью свойства Испсеудоаддресс. Байты результата псевдо-адреса будут установлены либо на содержимое резервной локальной переменной, с указанного смещения до конца переменной, либо в пустое значение, если резервная локальная переменная не существует, является другим псевдо-адресом или не сохраняет достаточно байтов для хранения данных в заданном смещении. Псевдо-адреса также можно передать в качестве параметра в Дкмкомпиледилинспектионкуери, установив для параметра IsTrue значение true в Дкмилпараметервалуе. Нельзя использовать псевдо-адрес в любой инструкции IL, за исключением случаев, описанных выше. Попытка использовать псевдо-адрес любым другим способом приведет к исключению IL типа Дкмилфаилуререасон:: Инвалидпсеудоаддрессоператион. Например, нельзя умножить или разделить на псевдо-адреса или сохранить их в любом месте отлаживаемого процесса.
Этот API появился в Visual Studio 14 RTM (Дкмапиверсион. VS14RTM).
public ref class DkmILPushLocalVariablePseudoAddress : Microsoft::VisualStudio::Debugger::Evaluation::IL::DkmILInstruction
[Windows::Foundation::Metadata::WebHostHidden]
public ref class DkmILPushLocalVariablePseudoAddress : Microsoft::VisualStudio::Debugger::Evaluation::IL::DkmILInstruction
[Windows::Foundation::Metadata::WebHostHidden]
class DkmILPushLocalVariablePseudoAddress : Microsoft::VisualStudio::Debugger::Evaluation::IL::DkmILInstruction
[System.Runtime.InteropServices.Guid("56f239a7-cc68-aa1a-8b1a-ee0cb4ff9834")]
public class DkmILPushLocalVariablePseudoAddress : Microsoft.VisualStudio.Debugger.Evaluation.IL.DkmILInstruction
[<System.Runtime.InteropServices.Guid("56f239a7-cc68-aa1a-8b1a-ee0cb4ff9834")>]
type DkmILPushLocalVariablePseudoAddress = class
inherit DkmILInstruction
Public Class DkmILPushLocalVariablePseudoAddress
Inherits DkmILInstruction
- Наследование
- Атрибуты
Свойства
| ByteOffset |
Смещение во резервной локальной переменной, на которое ссылается этот псевдо-адрес. Этот API появился в Visual Studio 14 RTM (Дкмапиверсион. VS14RTM). |
| Index |
Индекс переменной IL, с которой должен быть создан псевдо-адрес.
|
| TagValue |
Дкмилинструктион является абстрактным базовым классом. Это перечисление указывает, какой производный класс этот объект является экземпляром. (Унаследовано от DkmILInstruction) |
| UniqueId |
Уникально идентифицирует объект Дкмилинструктион. Используется в качестве ключа хэш-таблицы, чтобы обеспечить быстрое сопоставление инструкций Дкмил с соответствующими значениями. (Унаследовано от DkmILInstruction) |
Методы
| Create(Int32, Int32) |
Создайте новый экземпляр объекта Дкмилпушлокалвариаблепсеудоаддресс.
|