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

Ошибка при сборке Dll-приложения

Добавлено: 02 Сентябрь 2014, 10:32
NewUser
С новым учебным годом всех! Здравствуйте!
Вот решил перевести локальное кларион-приложение в dll-версию. Столкнулся с массой ошибок и множеством варнингов.
Упростил задачу - попробовал собрать длл-приложение из Exemple'вской папки DLLTUTOR.
Сборка всех апп-шек прошла на ура, кроме Allfiles.app.
Генератор выдает 332 errors и 19 warnings.
Настройки в апп-шках не менял.
В чем может быть засада? Кто сталкивался?
Warnings.jpg
ErrorsType3.jpg
Вложение ErrorsType3.jpg больше недоступно

Re: Ошибка при сборке Dll-приложения

Добавлено: 02 Сентябрь 2014, 11:03
kreator
Версия Clarion какая? ABC или Legacy? Вообще, всё хорошо, тем более в примере dlltutor. Наверно, есть какие тонкости. Я скажу как у нас. Приложение, где описаны классы и таблицы (в Global Properties->Action галка "Generate Template Globals and ABC's as EXTERNAL" не стоит, галка "Generate all file declaration" стоит, "File Attributes/External" - "None External"), собирается в dll. В этом приложении мы ещё описываем глобальные переменные, которые должны быть видны в других dll. Есть приложение, которое собирается в exe. В его установках - галка "Generate Template Globals and ABC's as EXTERNAL" стоит, галка "Generate all file declaration" не стоит, "File Attributes/External" - "All External". в этом приложении есть только одна процедура MainFrame, описанная как External, это сделано просто для удобства, чтобы exe-шник не перекомпилировать каждый раз. Остальные приложения собираются в dll с глобальными установками, как у exe. Чтобы процедуры виделись из разных dll, им надо ставить атрибут "Export".

Re: Ошибка при сборке Dll-приложения

Добавлено: 02 Сентябрь 2014, 18:36
NewUser
Ничего не понимаю, все, вроде бы, так.... :(
C63 ABC
AllFiles.app (приложение, где описаны классы и таблицы):
General.jpg
FileControl.jpg
Defines:
_ABCDllMode_=>0
_ABCLinkMode_=>1

Re: Ошибка при сборке Dll-приложения

Добавлено: 02 Сентябрь 2014, 18:47
NewUser
Ну, и сам файл AllFiles.app - может кто соберет, посмотрит...
Allfiles.rar
(8.33 КБ) 266 скачиваний

Re: Ошибка при сборке Dll-приложения

Добавлено: 02 Сентябрь 2014, 23:42
gopstop2007
NewUser писал(а):Ну, и сам файл AllFiles.app - может кто соберет, посмотрит...
Allfiles.rar
скачал - собралось сразу без ошибок
Первая картинка
Warnings.jpg
ошибки по глобальным данным? если да, то объяви глобавльные данные в dct
clarion 6.3

Re: Ошибка при сборке Dll-приложения

Добавлено: 03 Сентябрь 2014, 0:09
NewUser
В том-то и дело, что все что есть - апп+дкт вложил в архив как есть. Т.е. то, что у Вас собралось у меня выдает те ошибки, часть которых отображены на скриншотах.
Уже не знаю что думать. Переустанавливал Клару несколько раз. Не помогло. Может дело в темплейтайх и других компанентах, которые мигрировали из удаленной папки расположения клариона (при переустановке) в новую. Может в них сбой? Тогда как понять в каком? При локальной сборке все работает без сучка-без задоринки.

Re: Ошибка при сборке Dll-приложения

Добавлено: 03 Сентябрь 2014, 1:56
Admin
NewUser писал(а):Генератор выдает 332 errors и 19 warnings.
Найдите причину по которой LSPZIP.INC от LSZip включается в ваш проект и все.
P.S. Типа вспомним про !ABCIncludeFile и про ClassExcludeABCClasses из ABCFree. Думаю это оно!

Re: Ошибка при сборке Dll-приложения

Добавлено: 03 Сентябрь 2014, 11:13
kreator
Я тоже скачал, прогнал - всё нормально. И нет у меня тех объектов, что на скриншотах. Видимо, Admin прав, в проект лезет лишнее, правда, пока непонятно как.

Re: Ошибка при сборке Dll-приложения

Добавлено: 03 Сентябрь 2014, 13:50
Дед Пахом
Скорее всего валяются какие-то кривые "ABC-совместимые" файлы в libsrc. А для их компиляции даже "include" писать не надо, менеджер ABC их сам в проект пихает

Re: Ошибка при сборке Dll-приложения

Добавлено: 03 Сентябрь 2014, 14:05
gopstop2007
бросьте Ваш архив в новую папку и скомпилируйте, или удалите в старой все *.clw + *.inc и заново скомпилируйте

Re: Ошибка при сборке Dll-приложения

Добавлено: 03 Сентябрь 2014, 20:56
NewUser
Спасибо всем за участие!
Вот как оно иногда бывает - думал делов-то на пару часов, а тут такое дело.... :)
Пошел разбираться....