Страница 1 из 2

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

Добавлено: 08 Февраль 2021, 16:00
porutchik
с рукописным классом проблем не возникает, тут решил (чтоб не мучатся с переменными полями бд из словаря) прикрутить эту непонятную хрень. В пределах 1 длл она вполне работает, и все компилируется в других нормально, но при вызове сразу гпф. Кто-нибудь пользовал сабж?

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

Добавлено: 08 Февраль 2021, 16:47
Admin
IMHO нужно почитать про LINK и DLL

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

ADOProcCommCaller CLASS,MODULE('ADOProcC.CLW'),TYPE,LINK('ADOProcC.CLW',_svLinkMode_),DLL(_svDllMode_)
...
                  END

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

Добавлено: 08 Февраль 2021, 17:30
kreator
По-моему, сейчас эти опции лишние. Source Class пишется абсолютно также, как и "руками". porutchik, покажите определение класса (inc-файл создаётся автоматически, не так ли?).

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

Добавлено: 08 Февраль 2021, 17:56
porutchik
да inc создается автоматически, все что указано выше в нем прописано (иначе ругань при компиляции). Сравниваю, то что есть в своих "рукописных" классах - все присутствует. До первой строки в init (которая stop()) даже не доходит. Даже до construct не доходит

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

Добавлено: 08 Февраль 2021, 17:59
porutchik
в inc он запихивает все что указано в секции declaration в моем случае
GetFC CLASS, TYPE, THREAD, LINK('FB0002.clw', _ABCLinkMode_), MODULE('FB0002.clw'), DLL(1)

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

Добавлено: 08 Февраль 2021, 18:40
kreator
Ну попробуйте вот так:

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

LocatorClass  CLASS,TYPE,MODULE('ABBROWSE.CLW'),DLL(_ABCDllMode_)
Как в анналах. Насчёт треда не знаю.

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

Добавлено: 08 Февраль 2021, 18:51
porutchik
в этом случае в других длл - куча ругани Unresolved External

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

Добавлено: 09 Февраль 2021, 2:06
Admin
Clarion ver?
Что такое "Source Class", это шаблон?
Где взять?

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

Добавлено: 09 Февраль 2021, 2:22
porutchik
Admin писал(а): 09 Февраль 2021, 2:06 Clarion ver?
Что такое "Source Class", это шаблон?
Где взять?
шаблон стандартный 9 10 11 есть, 7 8 не помню. Нужно тестануть в 11, может там поравили

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

Добавлено: 09 Февраль 2021, 3:36
Admin
Все работает.

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

TestClass CLASS,THREAD,TYPE,MODULE('TestClass.clw'),LINK('TestClass.clw',_ABCLinkMode_),DLL(_ABCDllMode_)
Init        PROCEDURE  
          END
Только не нашел как экспортировать класс. Руками что ли?
Взял DP_Class и все экспортируется шаблоном.
В примере оба варианта.

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

Добавлено: 09 Февраль 2021, 8:28
porutchik
у меня все так же. Разница лишь что в классе работаю с базами словаря (почему и решил попробовать). В пределах одного апп все Ок. Вызов из другого гпф

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

Добавлено: 09 Февраль 2021, 11:39
gopstop2007
может его надо объявить в app с данными (например: data.dll)

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

Добавлено: 09 Февраль 2021, 11:48
porutchik
он там и объявлен

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

Добавлено: 09 Февраль 2021, 12:34
gopstop2007
сделали бы маленький тестовый пример, а то угадывать...

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

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