Partilhar via


IDebugDocumentContext2::GetStatementRange

Obtém o intervalo de instrução do arquivo de contexto do documento.

HRESULT GetStatementRange( 
   TEXT_POSITION* pBegPosition,
   TEXT_POSITION* pEndPosition
);
int GetStatementRange( 
   TEXT_POSITION[] pBegPosition,
   TEXT_POSITION[] pEndPosition
);

Parâmetros

  • pBegPosition
    [in, out] A TEXT_POSITION estrutura que é preenchida com a posição inicial. Defina este argumento como um valor nulo se essa informação não for necessário.

  • pEndPosition
    [in, out] A TEXT_POSITION estrutura que é preenchida com a posição final. Defina este argumento como um valor nulo se essa informação não for necessário.

Valor de retorno

Se bem-sucedida, retorna S_OK; Caso contrário, retorna um código de erro.

Comentários

Um intervalo de instrução é o intervalo de linhas que contribuíram com o código ao qual se refere a este contexto do documento.

Para obter o intervalo de código-fonte (incluindo comentários) dentro desse contexto do documento, chame o IDebugDocumentContext2::GetSourceRange método.

Exemplo

O exemplo a seguir mostra como implementar este método para um simples CDebugContext objeto que expõe a IDebugDocumentContext2 interface. Este exemplo preenche a posição final somente se a posição de início não é um valor nulo.

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;  
}  

Consulte também

Referência

IDebugDocumentContext2

IDebugDocumentContext2::GetSourceRange

TEXT_POSITION