Как получить ошибки файла, используя OTA?

Я хотел бы получить доступ к ошибкам в активном файле (.pas). Сейчас я могу найти его на левой стороне IDE, как вы можете видеть на картинке.

Я нашел на OTA интерфейс IOTAModuleErrors, это то, что я хочу. Но я не нашел его на BorlandIDEServices.QueryInterface или BorlandIDEServices.GetService. Кто-то знает, как получить к нему доступ?

1 ответ

Решение

Я нашел это! Это было намного проще, чем я думал, это просто вопрос приведения IOTAModule в модуле к IOTAModuleErrors.

Если вам нужен практический пример, вы можете проверить этот проект, который я использую в модуле Source/FindUnit.OTAUtils.pas, в функции GetErrorListFromActiveModule.

Образец:

function GetErrorsListFromActiveModule: TOTAErrors;
var
  ModuleServices: IOTAModuleServices;
  ModuleErrors: IOTAModuleErrors;
begin
  ModuleServices := BorlandIDEServices as IOTAModuleServices;
  Assert(Assigned(ModuleServices));
  ModuleErrors := ModuleServices.CurrentModule as IOTAModuleErrors;
  Result := ModuleErrors.GetErrors(ModuleServices.CurrentModule.FileName);
end;

Спасибо

Другие вопросы по тегам