|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
COM Inprocess server - получение events от dispinterface
Добрый день уважаемые.
1. есть dll в виде COM Inprocess server (для управления(железкой) контроллером). 2. сделал импорт библиотеки 3 получил файл Apda21Control_TLB.pas вопрос как получить/перехватить ответ на запрос (dispinterface events) когда запрашиваю время apda.GetTime(1); наступает событие OnTime код из файла Apda21Control_TLB.pas - (в аттаче) Код:
function OnTime(Id: Integer; Value: TDateTime): HResult; dispid 6; Код:
procedure Tmonitor.Button1Click(Sender: TObject); var Apda:IApda21Interface; ipaddr:string; begin ipaddr:= '192.168.20.55'; Apda:= COApda21Interface.Create; Apda.Clear; Apda.CreateApda(1,1,2048,2,ipaddr,'123456'); Apda.Interval:= 55; Apda.CreatePollers; Apda.Active:= 1; //запрос текущего времени контроллера apda.GetTime(1); end; Последний раз редактировалось balue, 04.11.2012 в 00:36. |
#2
|
||||
|
||||
Реализация событий COM+ в среде Delphi
EventSinkImp очень удобная програмка (+демы) автоматом создает классы для с агрегацией событий Понять, что хочет заказчик - бесценно, ведь он платит MasterCard |
Этот пользователь сказал Спасибо cotseec за это полезное сообщение: | ||
balue (04.11.2012)
|
#3
|
||||
|
||||
Invoke переопредели. DispID у тебя есть.
Пишу программы за еду. __________________ |
Этот пользователь сказал Спасибо NumLock за это полезное сообщение: | ||
balue (04.11.2012)
|
#4
|
|||
|
|||
Цитата:
|