Вызов Dll Clarion из С++

Clarion, Clarion 7

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

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
Гость

Сообщение Гость »

Сам пишу на С5.5g Наработана куча Dll функций и процедур в 32 разрядах. Что необходимо сделать, чтобы они стали доступны для программистов, пишущих на С++ ? Или каким образом они должны вызывать мои процедуры? Есть ли с моей или их стороны какие-то особенности?:rolleyes:
Написал: Anatoly(38)
Гость

Сообщение Гость »

Clarion - писатели, неужели мы все пишем программы, которые не интересны для Сишников? Или из Си наши Dll по человечески не читатются? Наш Сишник смог добраться до процедуры Clarion Dll только той, которая не имеет параметров и то как он говорит:"Через задницу". Что необходимо сделать, чтобы Си мог читать Dll Clariona?

Написал: Anatoly(38)
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3133
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 10 раз
Поблагодарили: 28 раз
Контактная информация:

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

хоть бы прототип одной функции привёл, что ли
Написал: Дед Пахом(89)
Гость

Сообщение Гость »

Вообще-то проблем особых не должно быть. Нужно помнить только, что строки и группы передаются как два параметра - длина и адрес. Ну и внешние имена имеют специфический вид. А вообще действительно нужен пример проблемной процедуры...
Написал: Вадим Синявский(200)
Гость

Сообщение Гость »

Есть и со строковыми параметрами и без. Привожу пример одной из
функций. возращающей выбранную рабочую дату:
WorkDate = Calendar(InpDate,Xpos,Ypos)
где:
Workdate Long ! Возращаемая рабочая дата
InpDate Long ! Дата входящая
Xpos Long ! Верхний левый угол окна календаря
YPos Long !

Все это в С5.5g 32 разрядное. Почему-то не может прочитать.

Если смотрю по LibMaker, то имя функции там Calendar@FLLL.
После @ - видимо краткое обозначение типов?
Написал: Anatoly(38)
seawolf
Старожил
Сообщения: 213
Зарегистрирован: 08 Июль 2005, 11:23
Откуда: St. Petersburg

Сообщение seawolf »

Думаю в прототипе надо дописать Pascal (если Вы хотите чтобы из С++ или VB или Delphi они были видны и их можно было-бы вызвать)
Написал: seawolf(167)
Гость

Сообщение Гость »

Спасибо за Pascal с этими параметрами я не экспериментировал,
сейчас по подставляю и пусть товарищ пробует прочитать. Еще раз спасибо!
Написал: Anatoly(38)
Ответить