IDebugPendingBreakpoint2::Virtualize
Bascule l’état virtualisé de ce point d’arrêt en attente. Lorsqu’un point d’arrêt en attente est virtualisé, le moteur de débogage tente de le lier chaque fois que le nouveau code se charge dans le programme.
Syntaxe
HRESULT Virtualize(
BOOL fVirtualize
);
int Virtualize(
int fVirtualize
);
Paramètres
fVirtualize
[in] Défini sur différent de zéro (TRUE
) pour virtualiser le point d’arrêt en attente, ou sur zéro (FALSE
) pour désactiver la virtualisation.
Valeur de retour
En cas de réussite, retourne S_OK
, sinon, retourne un code d'erreur. Retourne E_BP_DELETED
si le point d’arrêt a été supprimé.
Notes
Un point d’arrêt virtualisé est lié chaque fois que le code est chargé.
Exemple
L’exemple suivant montre comment implémenter cette méthode pour un objet simple CPendingBreakpoint
qui expose l’interface IDebugPendingBreakpoint2 .
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;
}