IDebugPendingBreakpoint2::Virtualize
Přepíná virtualizovaný stav této čekající zarážky. Při virtualizaci čekající zarážky se ladicí modul pokusí vytvořit vazbu pokaždé, když se do programu načte nový kód.
Syntaxe
HRESULT Virtualize(
BOOL fVirtualize
);
int Virtualize(
int fVirtualize
);
Parametry
fVirtualize
[v] Nastavte na nenulovou (TRUE
) pro virtualizaci čekající zarážky nebo na nulu (FALSE
) a vypněte virtualizaci.
Vrácená hodnota
V případě úspěchu vrátí hodnotu S_OK
; v opačném případě vrátí kód chyby. Vrátí E_BP_DELETED
, pokud byla zarážka odstraněna.
Poznámky
Virtualizovaná zarážka je vázána při každém načtení kódu.
Příklad
Následující příklad ukazuje, jak implementovat tuto metodu pro jednoduchý CPendingBreakpoint
objekt, který zveřejňuje IDebugPendingBreakpoint2 rozhraní.
HRESULT CPendingBreakpoint::Virtualize(BOOL fVirtualize)
{
HRESULT hr;
// Verify that the pending breakpoint has not been deleted. If deleted,
// then return hr = E_BP_DELETED.
if (m_state.state != PBPS_DELETED)
{
if (fVirtualize)
{
// Set the PBPSF_VIRTUALIZED flag in the PENDING_BP_STATE_FLAGS
// structure.
SetFlag(m_state.flags, PBPSF_VIRTUALIZED);
}
else
{
// Clear the PBPSF_VIRTUALIZED flag in the PENDING_BP_STATE_FLAGS
// structure.
ClearFlag(m_state.flags, PBPSF_VIRTUALIZED);
}
hr = S_OK;
}
else
{
hr = E_BP_DELETED;
}
return hr;
}