GetCurrentBreakLineResult GetCurrentBreakLine(OdId tObject)
tObject. Моникёр модуля, в котором осуществляется отладка кода.
Операция GetCurrentBreakLine получает информацию о строке, в которой сработала точка останова.
Для выполнения операции укажите в поле tObject моникёр объекта, находящегося в режиме отладки.
Результатом операции будет информация о точке останова, в которой было прервано выполнение кода.
Ниже приведён пример получения информации о строке, в которой произошло прерывание кода в точке останова. В запросе передаётся моникёр модуля, запущенного в режиме отладки. В ответе возвращается информация о точке останова.
{
"GetCurrentBreakLine" :
{
"tObject" :
{
"id" : "CDFENMHJDPDCGOAEFECMBDAOCBFPPLDEHJLFMBPLOGEOFKMJ!M!302490"
}
}
}
{
"GetCurrentBreakLineResult" :
{
"bp" :
{
"moduleKey" : "302490",
"moduleName" : "M_DEBUG",
"lineNumber" : "16",
"enabled" : "1",
"passCount" : "1",
"meta" :
{
"text" : "Sub Main; Var \tci: ICultureInfo; \ti: Integer; \tt1: DateTime; \tt2: TimeSpan; Begin \tci := CultureInfo.Invariant; \tt1 := DateTime.Now; \tDebug.WriteLine("Приложение запущено. Время запуска: " + ci.FormatTimeEx(t1, "HH:mm") + '.'); \tFor i := 0 To 50000000 Do \t\t\/\/\/ <summary> \t\t\/\/\/Действие со многими итерациями \t\t\/\/\/ <\/summary> \tEnd For; \tt2 := DateTime.Now - t1; \tDebug.WriteLine("Выполнение завершено."); \tDebug.WriteLine("Время выполнения: " + t2.TotalSeconds.ToString + " секунд."); End Sub Main;",
"references" :
{
"builtinReferences" : "",
"repoReferences" : ""
},
"desc" :
{
"@ds" : "",
"@isShortcut" : "0",
"@isLink" : "0",
"@ver" : "21",
"@hf" : "0",
"i" : "M_DEBUG",
"n" : "Отладка приложения",
"k" : "302490",
"c" : "1537",
"p" : "171999",
"h" : "0",
"hasPrv" : "0",
"ic" : "0",
"trackElementDependents" : "0"
}
}
}
}
}
public static GetCurrentBreakLineResult GetCurrentBreakLine(MbId mb, string modId)
{
var somClient = new SomPortTypeClient(); // Прокси-объект для выполнения операций
// Параметры выполнения операции
var tGet = new GetCurrentBreakLine()
{
tObject = new OdId() { id = mb.id + "!" + FindObjectById(mb, modId).k }
};
// Получение информации о месте последнего прерывания выполнения кода
var result = somClient.GetCurrentBreakLine(tGet);
return result;
}
См. также: