
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
29.01.2006, 19:36
|
|||
|---|---|---|---|
|
|||
IMPLEMENTS - что-то не понял... |
|||
|
#18+
Спецы по VFP, помогите запутавшимуся чайнику, Нужно из VFP организовать обмен с OPC-сервером. Есть станд. библ. opcdaauto.dll, прописана в реестре На VB это выглядит так: Dim WithEvents MyOPCServer As OPCServer Set MyOPCServer = New OPCServer ну и дальше работаем с объектом MyOPCServer На VFP, как я понял: DEFINE CLASS MyClass AS custom IMPLEMENTS OPCServer IN 'opcdaauto.dll' ENDDEFINE дальше в программе MyObject = CREATEOBJECT('MyClass') - выдает ошибку "Class cannot be instantiated because Member 'OPCSERVER_get_StartTime' does not exist". Ну и куда копать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.01.2006, 07:30
|
|||
|---|---|---|---|
IMPLEMENTS - что-то не понял... |
|||
|
#18+
Берешь Object Browser находишь свою DLL выковыриваешь из нее все методы и события - перетаcкиваешь их мышом в окно Program он тебе сам все напишет - твоя задача только через BindEvent связаять свой класс и классом прописанным в твоей DLL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.01.2006, 13:02
|
|||
|---|---|---|---|
|
|||
IMPLEMENTS - что-то не понял... |
|||
|
#18+
Спасибо, все так просто... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.04.2006, 16:06
|
|||
|---|---|---|---|
|
|||
IMPLEMENTS - что-то не понял... |
|||
|
#18+
pivaБерешь Object Browser находишь свою DLL выковыриваешь из нее все методы и события - перетаcкиваешь их мышом в окно Program он тебе сам все напишет - твоя задача только через BindEvent связаять свой класс и классом прописанным в твоей DLL Разъясните пожалуйста, обязательно ли использование BindEvent, разве не достаточно сделать весь функционал в своем классе? И что имелось в виду '... классом прописанным в твоей DLL'? Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.04.2006, 01:31
|
|||
|---|---|---|---|
|
|||
IMPLEMENTS - что-то не понял... |
|||
|
#18+
Hi Сергей! >> Берешь Object Browser находишь свою DLL выковыриваешь из нее все методы и >> события - перетаcкиваешь их мышом в окно Program он тебе сам все >> напишет - твоя задача только через BindEvent связаять свой класс и >> классом прописанным в твоей DLL > Разъясните пожалуйста, обязательно ли использование BindEvent, разве не > достаточно сделать весь функционал в своем классе? Нет, для реализации интефейса необходимо помимо "прописывания функционала" в классе-заготовке полученном из ObjectBrowser "присоединить" эту реализацию к COM объекту. Правда Вадим слегка ошибся, реализация присоединяется не через функцию BindEvents(), а через функцию EventHandler(). > И что имелось в виду '... классом прописанным в твоей DLL'? В dll находится COM компонент. Он имеет интерфейсы (по сути интерфейс это список методов и их параметров - это конечно сильно упрощённое определение, но для начала сойдёт). Некоторые из этих интерфейсов допускают "внешнюю" реализацию - т.е. разработчик COM компонента специально определяет, что методы вот этого вот интерфейса могут быть описаны другим разработчиком, а его компонент станет их вызывать. Помимо такого механизма связывания существует и другой - более старый (но он применим далеко не для всех COM объектов). Это требует помещения COM объекта на фоксовую форму - при этом сам фокс беспокоится о связывании твоего кода, с интерфейсами COM объекта - для тебя всё выглядит очень просто - у объекта OleControl появляются дополнительные методы - обработчики событий, набор которых зависит от того что за класс был помещён на форму. Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=41&tablet=1&tid=1591897]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
160ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
| others: | 214ms |
| total: | 478ms |

| 0 / 0 |
