SQLRU.net
Разработка приложений баз данных

Начало » Программирование » Delphi » Обработать результат функции, возвращаемый в виде интерфейса
Обработать результат функции, возвращаемый в виде интерфейса [сообщение #2778] Sat, 15 July 2023 21:10 Переход к следующему сообщению
rico_spb в настоящее время не в онлайне  rico_spb
Сообщений: 8
Зарегистрирован: July 2023
Junior Member
Добрый день, коллеги!
Волею судеб спустя много лет пришлось вновь вспоминать навыки в Delphi, но с интерфейсами ранее сталкиваться не приходилось, а на свежую немолодую голову врубиться в них пока не получается.
Нужно прикрутить к очень старому проекту бота Telegram. Пытаюсь разобраться с TelegaPI от rareMaxim

Бот объявлен так:
fBot: TTelegramBotApi;
Нужно обработать результат вызова
fBot.SendMessage(lMsg)
который объявлен так
function TTelegramBotApi.SendMessage(ASendMessageArgument: TtgSendMessageArgument): ItgResponse<TtgMessage>;

  ItgResponse<T> = interface(ItgResponseBase)
    ['{B98FE3AF-73DF-4A1D-BC25-C36EA264055B}']
    // private
    function GetResult: T;
    procedure SetResult(const Value: T);
    function GetResponse: IcaResponseBase;
    procedure SetResponse(const Value: IcaResponseBase);
    // public
    /// <summary>
    /// Gets the result object.
    /// </summary>
    property Result: T read GetResult write SetResult;
    property CloudResponse: IcaResponseBase read GetResponse write SetResponse;
  end;

  ItgResponseBase = interface
    ['{1657D8E5-0B41-4983-B1BE-443A266CFD40}']
    // private
    function GetDescription: string;
    function GetErrorCode: Integer;
    function GetOk: Boolean;
    procedure SetDescription(const Value: string);
    procedure SetErrorCode(const Value: Integer);
    procedure SetOk(const Value: Boolean);
    function GerParameters: TtgResponseParameters;
    // public
    property Description: string read GetDescription write SetDescription;
    property ErrorCode: Integer read GetErrorCode write SetErrorCode;
    property Ok: Boolean read GetOk write SetOk;
    property Parameters: TtgResponseParameters read GerParameters;
  end;
Как это сделать?
Re: Обработать результат функции, возвращаемый в виде интерфейса [сообщение #2780 является ответом на сообщение #2778] Sun, 16 July 2023 11:58 Переход к предыдущему сообщениюПереход к следующему сообщению
BlackEric в настоящее время не в онлайне  BlackEric
Сообщений: 368
Зарегистрирован: June 2022
Senior Member
Оно сдохло и даже не гуглится толком. Попробуйте запустить dieletro/tdlib-delphi

или
Пишем Telegram Bot на Delphi XE 7.
Re: Обработать результат функции, возвращаемый в виде интерфейса [сообщение #2830 является ответом на сообщение #2780] Tue, 25 July 2023 10:46 Переход к предыдущему сообщению
rico_spb в настоящее время не в онлайне  rico_spb
Сообщений: 8
Зарегистрирован: July 2023
Junior Member
Спасибо, второй вариант оживить удалось. Осталось понять, как к нему кнопки прикрутить, но с этим надо, видимо, в API рыться
Предыдущая тема: Отмена операции
Следующая тема: Путевый TImage
Переход к форуму:
  


Текущее время: Wed Dec 18 15:31:24 GMT+3 2024

Общее время, затраченное на создание страницы: 0.08166 секунд