Clarion 11-12

Clarion, Clarion 7

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

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7322
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Clarion 11-12

Сообщение Игорь Столяров »

Губин Игорь писал(а): 19 Июнь 2022, 11:41 как его линковка включается в настройках Report
В настройках Report для шаблона "Report Output PDF" выбирается вариант экспорта:
традиционный или новый. Но я вообще этот шаблон не использую ...
За теми кто отстал - не возвращаться. (С) Кодекс
Аватара пользователя
Губин Игорь
✯ Ветеран ✯
Сообщения: 2301
Зарегистрирован: 16 Сентябрь 2005, 16:35
Откуда: Москва
Поблагодарили: 17 раз

Clarion 11-12

Сообщение Губин Игорь »

PavelNK писал(а): 17 Июнь 2022, 6:47 C# не пробовал, а из Delphi и C++ вызывал.
А краткий ликбез можно? Вроде всё сделал, но творится невесть что. Или у меня крыша едет, или у компилятора C++ из поставки Clariona.

Короче, надо функцию типа

ClaFunc(*CString,Real,Real),ULong вызвать из C++
Нужен пример описания на C и пример параметров функции в Cla

ClsFunc(*CString,Real,Real),ULong,Pascal
unsigned long ClsFunc(char**, double, double);

char *FStr="First String";
double v1 = 2.0;
double v2=3.5;
unsigned iret;

iret = ClsFunc(&FStr, v1, v2);

P.S. Вариант unsigned long ClsFunc(char**, unsigned, double, double); где второй параметр длина, я, тоже, пробовал.
Это я только кажусь дураком! На самом деле я полный идиот!
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3131
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 10 раз
Поблагодарили: 28 раз
Контактная информация:

Clarion 11-12

Сообщение Дед Пахом »

Губин Игорь писал(а): 19 Июнь 2022, 17:05 А краткий ликбез можно?
Не удивляйся, если тебе ответят "Да там элементарно, я делал сорок лет назад, но искать лень".
С уважением, ДП
Аватара пользователя
Губин Игорь
✯ Ветеран ✯
Сообщения: 2301
Зарегистрирован: 16 Сентябрь 2005, 16:35
Откуда: Москва
Поблагодарили: 17 раз

Clarion 11-12

Сообщение Губин Игорь »

Дед Пахом писал(а): 19 Июнь 2022, 17:26 Не удивляйся, если тебе ответят "Да там элементарно, я делал сорок лет назад, но искать лень".
Сорок лет назад у него не могло быть Дельфи )))
Это я только кажусь дураком! На самом деле я полный идиот!
seawolf
Старожил
Сообщения: 213
Зарегистрирован: 08 Июль 2005, 11:23
Откуда: St. Petersburg

Clarion 11-12

Сообщение seawolf »

Ну в принципе сложного с С++ ничего не было. VStudio 6.0 + Clarion 5 (20 лет назад)

вот на clarion экспортирована функция
GetInfoPort(*Cstring,Long,*Cstring,Byte),LONG,PASCAL

из C++ прототип описан
long (WINAPI* pfn_GetInfoPort)(ULONG lenStrIniFile, LPCSTR pIniFile,
ULONG portNumber,
ULONG lenAnswerBuf, LPSTR pBufAnswer,
BYTE flagLanguage);

Главная фишка о которой надо помнить - если вызываем Cstring из C++, задействуем не один, а два параметра. Первый - длина буфера, а второй собственно адрес строки! Подобная схема также прекрасно работала и с последней студией и clarion9 пару лет назад.
seawolf
Старожил
Сообщения: 213
Зарегистрирован: 08 Июль 2005, 11:23
Откуда: St. Petersburg

Clarion 11-12

Сообщение seawolf »

Кстати из Delphi по такой-же схеме идет вызов - был и такой проджект!
Аватара пользователя
Губин Игорь
✯ Ветеран ✯
Сообщения: 2301
Зарегистрирован: 16 Сентябрь 2005, 16:35
Откуда: Москва
Поблагодарили: 17 раз

Clarion 11-12

Сообщение Губин Игорь »

seawolf писал(а): 19 Июнь 2022, 19:42 Ну в принципе сложного с С++ ничего не было. VStudio 6.0 + Clarion 5 (20 лет назад)
Вот хрен вот нам...

unsigned long CreateAnalizGetGrade(unsigned long lena, LPCSTR a1);

void _main()
{

unsigned long lens2=8;
LPCSTR AName = "TestChar";

iret = CreateAnalizGetGrade(lens2,AName);
...


И фиг знает что передаёт... Завтра проверю на VC
Это я только кажусь дураком! На самом деле я полный идиот!
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7322
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Clarion 11-12

Сообщение Игорь Столяров »

Я извиняюсь за то, что вмешиваюсь в обсуждение - но можно спросить ?

Кто-нибудь использует текущую версию Clarion (11.1.13815) для сборки реально
работающих проектов, а не для экспериментов и потешных забав ?
За теми кто отстал - не возвращаться. (С) Кодекс
Ал
✯ Ветеран ✯
Сообщения: 1011
Зарегистрирован: 08 Июль 2005, 6:48
Откуда: Россия

Clarion 11-12

Сообщение Ал »

Игорь Столяров писал(а): 20 Июнь 2022, 7:01 Я извиняюсь за то, что вмешиваюсь в обсуждение - но можно спросить ?

Кто-нибудь использует текущую версию Clarion (11.1.13815) для сборки реально
работающих проектов, а не для экспериментов и потешных забав ?
с какой целью интересуетесь?
8)
Ал
✯ Ветеран ✯
Сообщения: 1011
Зарегистрирован: 08 Июль 2005, 6:48
Откуда: Россия

Clarion 11-12

Сообщение Ал »

в стандартных \Examples\SRC\SHOWIMG\... всегда был пример с подключением модуля MATCH.CPP
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7322
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Clarion 11-12

Сообщение Игорь Столяров »

Ал писал(а): 20 Июнь 2022, 8:09 с какой целью интересуетесь
С той же самой целью - использовать в реальной работе.
Год назад переход на C11.1 закончился полной хренью и откатом на С11.

С тех пор вышло 2 (полноценных) обновления C11.1, в которых старательно
исправляли сделанные ошибки и устраняли созданные проблемы.
Может быть пора попробовать снова работать с C11.1 ?
За теми кто отстал - не возвращаться. (С) Кодекс
Ал
✯ Ветеран ✯
Сообщения: 1011
Зарегистрирован: 08 Июль 2005, 6:48
Откуда: Россия

Clarion 11-12

Сообщение Ал »

хз (стучу по дереву), у меня на последнем релизе все норм, задачи разные, по времени - некоторые круглосуточно крутятся, некоторые по разу в сутки гоняют..., но сразу оговорюсь - из 7-ми пишущих ("clarion for windows") коллег, такой рисковый - на cw11.1 я один, остальные пользуются "классикой" - cw6.
Аватара пользователя
Губин Игорь
✯ Ветеран ✯
Сообщения: 2301
Зарегистрирован: 16 Сентябрь 2005, 16:35
Откуда: Москва
Поблагодарили: 17 раз

Clarion 11-12

Сообщение Губин Игорь »

Ал писал(а): 20 Июнь 2022, 8:19 в стандартных \Examples\SRC\SHOWIMG\... всегда был пример с подключением модуля MATCH.CPP
Подключение модулей CPP в программу на Clarion никаких сложностей не представляет. Речь идёт об обратном, когда головня на CPP, а библиотека на Clarion
Это я только кажусь дураком! На самом деле я полный идиот!
Аватара пользователя
Губин Игорь
✯ Ветеран ✯
Сообщения: 2301
Зарегистрирован: 16 Сентябрь 2005, 16:35
Откуда: Москва
Поблагодарили: 17 раз

Clarion 11-12

Сообщение Губин Игорь »

Игорь Столяров писал(а): 20 Июнь 2022, 7:01 Кто-нибудь использует текущую версию Clarion (11.1.13815) для сборки реально
работающих проектов, а не для экспериментов и потешных забав ?
Ну я, а что?! :nr: :lol:

Я, в какой-то мере это делаю вынуждено, т.к. online и десктопные проекты должны иметь одинаковое ядро. Но проблем нет...
Это я только кажусь дураком! На самом деле я полный идиот!
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7322
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Clarion 11-12

Сообщение Игорь Столяров »

Губин Игорь писал(а): 20 Июнь 2022, 9:04 online и десктопные проекты должны иметь одинаковое ядро
Спасибо, это интересная информация.
Понимаете, год назад я видел (и показывал) несовместимые с жизнью проблемы C11.1

Но мне рассказывали про "всё хорошо, прекрасная маркиза !". ;)
Правда потом, после нескольких уточнений, выяснялось, что "всё хорошо" с тестовым
приложением на одном компьютере. :)
За теми кто отстал - не возвращаться. (С) Кодекс
Ответить