· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.WIN32 —› Связывание static lib (obj) на asm и Delphi

Посл.отвђт Сообщенiе


Дата: Янв 20, 2004 17:03:26

Вроде не совсем офтопик. В общем, просветите чайника как библиотеку на асме статически привязять к программе на делфи, пробую на делфи так
unit BLABLA;
interface

{$L blabla.obj}

uses Windows;

function BlaBla1(Arg1 PChar): Boolean; stdcall;

implementation
function Blabla1; external;

Но ругается Unreferenced external Blabla. Как правильно нужно сделать? На делфи отродясь не писАл :)
На крайний случай придется dll делать :( чего не очень хочется.


Дата: Янв 20, 2004 17:53:38

если говорит unreferenced BlaBla, то не находит объектник
если говорит unreferenced BlaBla1, то не находит ф-ю. можно попробовать так:

...
function BlaBla1(Arg1 PChar): Boolean; external; stdcall;
implementation
...
так должно работать. на счет stdcall - надо внимательнее.


Дата: Янв 20, 2004 18:02:53

"Unreferenced external Blabla" - попробуй использовать эту функцию (хотя бы, получи на нее указатель) в коде. иначе компилятор (ну, или линкер - как там в дельфях) может просто ее не подключить


Дата: Янв 20, 2004 18:34:32

andsin
Ну да, Unreferenced Blabla1 конечно, ошибся чуть-чуть. Я кажется делал так тоже, но эффекта не было никакого. Да, думаю, это важно что компилятор MASM, соотв. объектные файлы несовместимы.

Grenader
хотя бы, получи на нее указатель
Ну и как я это сделаю, если оно даже не компилится. Мне статически связать нужно.


Дата: Янв 20, 2004 22:35:53

masquer
может, это поможет - у борланда объектные файлы формата OMF, а масм, выдает, ессно, COFF. есть утилитка COFF->OMF от того же борланда...


Дата: Янв 22, 2004 10:53:26
Правка

Grenader
А опция /omf не пойдёт?


Дата: Янв 22, 2004 17:25:09

попробуй.


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.138