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 |