IDataModelScriptDebug2::GetCurrentPosition 方法 (dbgmodel.h)

GetCurrentPosition 的方法返回脚本中的当前位置。 仅当脚本被分解为调试器时,才会调用 GetScriptState 将返回 ScriptDebugBreak。 对此方法的任何其他调用都无效,并且将失败。

脚本的位置定义为字符范围。 必须始终返回范围开始(行号和列号)。 如果特定调试器能够返回脚本中“当前位置”的完整范围,则可以选择在 positionSpanEnd 参数中返回结束位置。 如果调试器无法执行此作,范围末尾的行和列值(如果请求)应设置为零。

如果调试器可以传递调试器中断的代码行的源代码,它可能会从此方法返回此类代码。 如果可能,强烈建议提供此信息。 但是,不需要返回中断位置的起始行和列以外的任何信息。 如果不支持源行信息,可能会为该参数返回 nullptr 值。

语法

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

参数

currentPosition

必须在此处返回脚本的当前中断位置。 返回结构的“行”和“列”字段基于一个。 任一中的零值表示信息不可用。

positionSpanEnd

如果调试器能够确定中断位置的完整跨度,则可以在此处返回范围的结束位置。 否则,应将零值填充到返回结构的“行”和“列”字段中。

lineText

如果调试器能够返回中断的行(或范围)的源代码,则可以在此处返回为 SysAllocString 函数分配的字符串。 调用方负责使用 SysFreeString 释放返回的字符串。 如果调试器无法生成此源信息,则应返回 nullptr。

返回值

此方法返回指示成功或失败的 HRESULT。

要求

要求 价值
标头 dbgmodel.h

另请参阅

IDataModelScriptDebug2 接口