Вниз
Скачать: CL | DM;

Подскажите как подключить *.obj от С++ к моему проекту   Найти похожие ветки 

← →
myfik   (2005-08-18 23:15) [0]

Добрый вечер! Подскажите пожалуйста как правильно подключать файлы *.obj, созданные ВС++ при компиляции модуля к Delphi-проекту, и как правильно обращатся к функциям в этом файле. А то у меня только функция без параметров нормально работает, всем остальным не получается передать значения параметров. Если можно рабочий пример.
С уважением Mufik


← →
DrPass ©   (2005-08-18 23:17) [1]

{$L myfile.obj}
А если не получается работать с параметрами, значит, неправильно модель вызова указал. Если в BC++ использовался __fastcall, то в Delphi не нужно ничего указывать. А так скорее всего стоит указать cdecl


← →
myfik   (2005-08-19 06:33) [2]

С первой строчкой понятно. Пробывал по всякому, но модуль откомпиленный в ВС++ не подключается на стадии линковки, пишет что неправильный образ программы для NT. Модуль в стиле С подключается без проблем и процедуру без параметров отрабатывает. Но как только надо добавить параметры выскакивает ошибка что программа не может прочитать данные по адресу и виснет. Трассировка дает что линкёр удалил символы параметра. Пробывал и с __fastcall, но идет только с __Pascal. Вот так на С extern __pascal int AAA(int,int);
extern __pascal int AAA(int A, int B)
{
return (A+B);
}
А так вызываю на Pascal {$R *.dfm}
{$L File1.obj}

function AAA(A,B: integer):integer;external;

procedure TForm1.Button1Click(Sender: TObject);
var
A,B,C : integer;
begin
A:=1;
B:=3;
C:=AAA(A,B);
Edit1.Text:=IntToStr(C);
end;


← →
myfik   (2005-08-21 22:40) [3]

Вчера снова попробывал то же с __fastcall, так теперь почему то Паскаль ругается что я неправильно обьявляю фуекцию, до этого такое описание транслятор пропускал. Может быть это глюк моей копии Дельфи?


← →
DrPass ©   (2005-08-21 23:14) [4]

Наверное, правильно будет
extern "C" __fastcall int AAA(int A, int B)
Компилятор С++ ведь балуется переименованием


← →
myfik   (2005-08-21 23:41) [5]

Хорошо попробую, но я кажется так уже обьявлял, столько вариантов перебрал что уже и не помню, но не идет и всё.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.02 c
14-1123751547
Akisflat
2005-08-11 13:12
2005.09.11
Сдельная работа для Delphi-программиста, в офисе в любое время.


5-1097961181
Gotcha
2004-10-17 01:13
2005.09.11
Новый компонент + графика


14-1124125245
TJulia
2005-08-15 21:00
2005.09.11
Юниксовая аська


11-1092338945
dimon_2004
2004-08-12 23:29
2005.09.11
TKOLVMHSyntaxEdit


14-1124201671
Guests
2005-08-16 18:14
2005.09.11
Помогите ссылкой найти административную карту России в




   Наверх