IDebugDocumentContext2 : : GetStatementRange
Obtient la plage d'instructions de fichier du contexte de document.
HRESULT GetStatementRange(
TEXT_POSITION* pBegPosition,
TEXT_POSITION* pEndPosition
);
int GetStatementRange(
TEXT_POSITION[] pBegPosition,
TEXT_POSITION[] pEndPosition
);
Paramètres
pBegPosition
[in, out] Une structure de TEXT_POSITION qui est terminée avec la position de départ. Affectez à cet argument à une valeur NULL si ces informations ne sont pas nécessaires.pEndPosition
[in, out] Une structure de TEXT_POSITION qui est terminée avec la position de fin. Affectez à cet argument à une valeur NULL si ces informations ne sont pas nécessaires.
Valeur de retour
En cas de réussite, retourne S_OK; sinon, retourne un code d'erreur.
Notes
Une plage d'instructions est la plage des lignes qui a fourni le code auquel ce contexte de document fait référence.
Pour obtenir la plage de code source (commentaires) dans ce contexte de document, appelez la méthode d' IDebugDocumentContext2 : : GetSourceRange .
Exemple
L'exemple suivant indique comment appliquer cette méthode d'un objet simple d' CDebugContext qui expose l'interface d' IDebugDocumentContext2 . Cet exemple complète la position de fin uniquement si la position de début n'est pas une valeur NULL.
HRESULT CDebugContext::GetStatementRange(TEXT_POSITION* pBegPosition,
TEXT_POSITION* pEndPosition)
{
HRESULT hr;
// Check for a valid beginning position argument pointer.
if (pBegPosition)
{
// Copy the member TEXT_POSITION into the local pBegPosition.
memcpy(pBegPosition, &m_pos, sizeof (TEXT_POSITION));
// Check for a valid ending position argument pointer.
if (pEndPosition)
{
// Copy the member TEXT_POSITION into the local pEndPosition.
memcpy(pEndPosition, &m_pos, sizeof (TEXT_POSITION));
}
hr = S_OK;
}
else
{
hr = E_INVALIDARG;
}
return hr;
}