Condividi tramite


Metodo IDataModelScriptDebug::GetCurrentPosition (dbgmodel.h)

Il metodo GetCurrentPosition restituisce la posizione corrente all'interno dello script. Questo può essere chiamato solo quando lo script viene interrotto nel debugger in cui una chiamata a GetScriptState restituirebbe ScriptDebugBreak. Qualsiasi altra chiamata a questo metodo non è valida e avrà esito negativo.

La posizione dello script è definita come intervallo di caratteri. L'inizio dell'intervallo deve sempre essere restituito (sia i numeri di riga che di colonna). Se il debugger specifico è in grado di restituire l'intervallo completo della "posizione corrente" all'interno dello script, è possibile restituire facoltativamente una posizione finale nell'argomento positionSpanEnd. Se il debugger non è in grado di eseguire questa operazione, i valori di riga e colonna nell'intervallo (se richiesto) devono essere impostati su zero.

Se il debugger può passare il codice sorgente per la riga di codice in cui il debugger è interrotto, può restituire tale codice da questo metodo. Se possibile, è fortemente incoraggiato a fornire queste informazioni. Non è tuttavia necessario che vengano restituite altre informazioni rispetto alla riga iniziale e alla colonna della posizione di interruzione. Se le informazioni sulla riga di origine non sono supportate, è possibile restituire un valore nullptr per tale argomento.

Sintassi

HRESULT GetCurrentPosition(
  ScriptDebugPosition *currentPosition,
  ScriptDebugPosition *positionSpanEnd,
  BSTR                *lineText
);

Parametri

currentPosition

La posizione di interruzione corrente dello script deve essere restituita qui. I campi Line e Column della struttura restituita sono uno basato. Un valore zero in indica che le informazioni non sono disponibili.

positionSpanEnd

Se il debugger è in grado di determinare l'intervallo completo della posizione di interruzione, la posizione finale dell'intervallo può essere restituita qui. In caso contrario, i valori zero devono essere compilati nei campi Line and Column della struttura restituita.

lineText

Se il debugger è in grado di restituire il codice sorgente per la riga (o l'intervallo) dell'interruzione, è possibile restituire qui come stringa allocata dalla funzione SysAllocString. Il chiamante è responsabile della liberazione della stringa restituita con SysFreeString. Se il debugger non è in grado di produrre queste informazioni di origine, deve essere restituito nullptr.

Valore restituito

Questo metodo restituisce HRESULT che indica l'esito positivo o l'errore.

Requisiti

Requisito Valore
Intestazione dbgmodel.h

Vedi anche

Interfaccia IDataModelScriptDebug