Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
Representerar en lokal variabel eller ett argument för en funktion.
Methods
| Metod | Description |
|---|---|
| GetArgumentIndex-metod | Hämtar indexet för ett funktionsargument. |
| GetCode-metod | Hämtar instansen "ICorDebugCode" som innehåller det här ICorDebugVariableHome objektet. |
| GetLiveRange-metod | Hämtar det interna intervallet som variabeln är live över. |
| GetLocationType-metod | Hämtar typen av variabelns interna plats. |
| GetOffset-metod | Hämtar förskjutningen från basregistret för en variabel. |
| GetRegister-metod | Hämtar registret som innehåller en variabel med platstypen VLT_REGISTER, och basregistret för en variabel med platstypen VLT_REGISTER_RELATIVE. |
| GetSlotIndex-metod | Hämtar det hanterade fackindexet för en lokal variabel. |
Example
Följande kodfragment använder ICorDebugCode4-objektet med namnet pCode4.
ICorDebugCode4 *pCode4 = NULL;
pCode->QueryInterface(IID_ICorDebugCode4, &pCode4);
ICorDebugVariableEnum *pVarLocEnum = NULL;
pCode4->EnumerateVariableHomes(&pVarLocEnum);
// retrieve local variables and arguments
ULONG celt = 0;
pVarLocEnum->GetCount(&celt);
ICorDebugVariableHome **homes = new ICorDebugVariableHome *[celt];
ULONG celtFetched = 0;
pVarLocEnum->Next(celt, homes, &celtFetched);
for (int i = 0; i < celtFetched; i++)
{
VariableLocationType locType = VLT_INVALID;
homes[i].GetLocationType(&locType);
switch (locType)
{
case VLT_REGISTER:
CorDebugRegister register = 0;
locals[i].GetRegister(®ister);
// now we know which register it is in
break;
case VLT_REGISTER_RELATIVE:
CorDebugRegister baseRegister = 0;
LONG offset = 0;
locals[i].GetRegister(®ister);
locals[i].GetOffset(&offset);
// now we know the register-relative offset
break;
case VLT_INVALID:
// handle case where we can't access the location
break;
}
}
Kravspecifikation
Plattformar: Se Operativsystem som stöds av .NET.
Rubrik: CorDebug.idl, CorDebug.h
Bibliotek: CorGuids.lib
.NET-versioner: Tillgänglig sedan .NET Framework 4.6.2