Source Class - multi dll с чем едят?

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Аватара пользователя
porutchik
Бывалый
Сообщения: 80
Зарегистрирован: 01 Февраль 2009, 5:35

Source Class - multi dll с чем едят?

Сообщение porutchik »

с рукописным классом проблем не возникает, тут решил (чтоб не мучатся с переменными полями бд из словаря) прикрутить эту непонятную хрень. В пределах 1 длл она вполне работает, и все компилируется в других нормально, но при вызове сразу гпф. Кто-нибудь пользовал сабж?
Аватара пользователя
Admin
Администратор
Сообщения: 3667
Зарегистрирован: 05 Июль 2005, 14:59
Откуда: Хабаровск
Контактная информация:

Source Class - multi dll с чем едят?

Сообщение Admin »

IMHO нужно почитать про LINK и DLL

Код: Выделить всё

ADOProcCommCaller CLASS,MODULE('ADOProcC.CLW'),TYPE,LINK('ADOProcC.CLW',_svLinkMode_),DLL(_svDllMode_)
...
                  END
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
kreator
✯ Ветеран ✯
Сообщения: 4143
Зарегистрирован: 28 Май 2009, 14:54
Откуда: Москва

Source Class - multi dll с чем едят?

Сообщение kreator »

По-моему, сейчас эти опции лишние. Source Class пишется абсолютно также, как и "руками". porutchik, покажите определение класса (inc-файл создаётся автоматически, не так ли?).
We are hard at work… for you. :)
Аватара пользователя
porutchik
Бывалый
Сообщения: 80
Зарегистрирован: 01 Февраль 2009, 5:35

Source Class - multi dll с чем едят?

Сообщение porutchik »

да inc создается автоматически, все что указано выше в нем прописано (иначе ругань при компиляции). Сравниваю, то что есть в своих "рукописных" классах - все присутствует. До первой строки в init (которая stop()) даже не доходит. Даже до construct не доходит
Аватара пользователя
porutchik
Бывалый
Сообщения: 80
Зарегистрирован: 01 Февраль 2009, 5:35

Source Class - multi dll с чем едят?

Сообщение porutchik »

в inc он запихивает все что указано в секции declaration в моем случае
GetFC CLASS, TYPE, THREAD, LINK('FB0002.clw', _ABCLinkMode_), MODULE('FB0002.clw'), DLL(1)
kreator
✯ Ветеран ✯
Сообщения: 4143
Зарегистрирован: 28 Май 2009, 14:54
Откуда: Москва

Source Class - multi dll с чем едят?

Сообщение kreator »

Ну попробуйте вот так:

Код: Выделить всё

LocatorClass  CLASS,TYPE,MODULE('ABBROWSE.CLW'),DLL(_ABCDllMode_)
Как в анналах. Насчёт треда не знаю.
We are hard at work… for you. :)
Аватара пользователя
porutchik
Бывалый
Сообщения: 80
Зарегистрирован: 01 Февраль 2009, 5:35

Source Class - multi dll с чем едят?

Сообщение porutchik »

в этом случае в других длл - куча ругани Unresolved External
Аватара пользователя
Admin
Администратор
Сообщения: 3667
Зарегистрирован: 05 Июль 2005, 14:59
Откуда: Хабаровск
Контактная информация:

Source Class - multi dll с чем едят?

Сообщение Admin »

Clarion ver?
Что такое "Source Class", это шаблон?
Где взять?
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
Аватара пользователя
porutchik
Бывалый
Сообщения: 80
Зарегистрирован: 01 Февраль 2009, 5:35

Source Class - multi dll с чем едят?

Сообщение porutchik »

Admin писал(а): 09 Февраль 2021, 2:06 Clarion ver?
Что такое "Source Class", это шаблон?
Где взять?
шаблон стандартный 9 10 11 есть, 7 8 не помню. Нужно тестануть в 11, может там поравили
Аватара пользователя
Admin
Администратор
Сообщения: 3667
Зарегистрирован: 05 Июль 2005, 14:59
Откуда: Хабаровск
Контактная информация:

Source Class - multi dll с чем едят?

Сообщение Admin »

Все работает.

Код: Выделить всё

TestClass CLASS,THREAD,TYPE,MODULE('TestClass.clw'),LINK('TestClass.clw',_ABCLinkMode_),DLL(_ABCDllMode_)
Init        PROCEDURE  
          END
Только не нашел как экспортировать класс. Руками что ли?
Взял DP_Class и все экспортируется шаблоном.
В примере оба варианта.
Вложения
test.zip
Пример с обычным классом и DP_Class
(26.1 КБ) 18 скачиваний
dp_class.tpl
Шаблон DP_Class
(7.4 КБ) 19 скачиваний
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
Аватара пользователя
porutchik
Бывалый
Сообщения: 80
Зарегистрирован: 01 Февраль 2009, 5:35

Source Class - multi dll с чем едят?

Сообщение porutchik »

у меня все так же. Разница лишь что в классе работаю с базами словаря (почему и решил попробовать). В пределах одного апп все Ок. Вызов из другого гпф
gopstop2007
✯ Ветеран ✯
Сообщения: 1543
Зарегистрирован: 25 Март 2009, 21:55

Source Class - multi dll с чем едят?

Сообщение gopstop2007 »

может его надо объявить в app с данными (например: data.dll)
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
Аватара пользователя
porutchik
Бывалый
Сообщения: 80
Зарегистрирован: 01 Февраль 2009, 5:35

Source Class - multi dll с чем едят?

Сообщение porutchik »

он там и объявлен
gopstop2007
✯ Ветеран ✯
Сообщения: 1543
Зарегистрирован: 25 Март 2009, 21:55

Source Class - multi dll с чем едят?

Сообщение gopstop2007 »

сделали бы маленький тестовый пример, а то угадывать...
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
Аватара пользователя
porutchik
Бывалый
Сообщения: 80
Зарегистрирован: 01 Февраль 2009, 5:35

Source Class - multi dll с чем едят?

Сообщение porutchik »

gopstop2007 писал(а): 09 Февраль 2021, 12:34 сделали бы маленький тестовый пример, а то угадывать...
11.zip
(50.15 КБ) 27 скачиваний
Ответить