Гость
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Обработка событий COMпонентов / 5 сообщений из 5, страница 1 из 1
14.03.2003, 20:26
    #32120537
maloi_alex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий COMпонентов
Че-то тишина в форуме....
Вообщем такая ситуация:
Передаю в VFP (7.0) указатель на интерфейс COM объекта. Необходимо программным путем связать события этого объекта с процедурами-обработчиками созданными в VFP. Причем сделать это нужно без создания каких либо VFP классов. Если у кого-нибудь есть идеи по этому поводу, прошу поделится. В долгу не останусь.
...
Рейтинг: 0 / 0
15.03.2003, 08:39
    #32120605
NNN
NNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий COMпонентов
> Че-то тишина в форуме....

Ничего удивительного - пятница, вечер..

> Необходимо программным путем связать события этого объекта с процедурами-обработчиками созданными в VFP. Причем сделать это нужно без создания каких либо VFP классов.

Я знаю только один способ - через IMPLEMENTS в DEFINE CLASS. Насколько я понимаю, тебе нужно через oledb provider, а там не прокатит. Посмотри возможности Microsoft Windows Script Component , может через него можно перехватывать COM-события.
...
Рейтинг: 0 / 0
15.03.2003, 14:18
    #32120640
maloi_alex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий COMпонентов
Нашел решение. Утилита Vfpcom может связывать VFP класс с событиями COM объекта, причем сам класс автоматом генерится с помощью этой же утилиты и сохраняется в prg'шнике. Просто этот prg'шник потом нужно скомпилировать в runtime и можно пользоваться на здоровье.
...
Рейтинг: 0 / 0
19.03.2003, 16:10
    #32123061
Crip
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий COMпонентов
Правильно , только ИМХО способ через IMPLEMENTS лучше.
А что бы все генерилось нужно перетащить соответствующий интерфейс из окна Object Browser...
...
Рейтинг: 0 / 0
19.03.2003, 22:14
    #32123265
maloi_alex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обработка событий COMпонентов
Я просто для чего все это затеял - для того, чтобы встроить возможности VFP в программу на Delphi. Fox конечно не умеет работать с компонентами Delphi, зато он отлично умеет работать с COM объектами, особенно с IDispatch и ITypeInfo, ITypeComp (через IDispatch->GetTypeInfo->ITypeBind не знаю почему, но этого требует VFP, в смысле обязательной реализации ITypeComp). Для того, чтобы встроить в прогу на Делфи все эту хрень нужно просто создать в Дельфях прокси класс, который переводит TPersistent через RTTI в IDispatch(обязательно с реализацией ITypeInfo(GetTypeInfo,GetTypeInfoCount,где больше всего глюков, ITypeComp). В общем все у меня пока отлично работает (из Делфи):
Типа:
SCAN
Self.ProgressBar1.Position = INT(RECNO()/RECNCOUNT()*100)
ENDSCAN

Проблема в том, что в Делфи в рантайм можно получить информацию только о published свойсnвах и событиях классов. О методах там речи даже и не ведется, а хотелось бы конечно в рантайм иметь возможность исполнять и методы компонетов. Напрмер чем плох Фоксовский код :
Мемо1.Clear()

Вот над этим я сейчас и работаю. Но это конечно только присказка.....
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Обработка событий COMпонентов / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]