Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.03.13;
Скачать: CL | DM;

Вниз

Помогите разобраться с указателями   Найти похожие ветки 

 
Prove   (2005-02-25 05:21) [0]

Нужно в dll иметь функцию, возвращающую boolean и способную при успехе (true) еще и "вернуть" integer.

// В проекте:

function Prove(fname:PChar; kol:Pointer):boolean; external "aaa.dll";

implementation

procedure TForm1.Button1Click(Sender: TObject);
var kkol:integer;
begin
Prove("111",Pointer(kkol));
end;

// В dll:

library aaa;

uses
 ShareMem,
 func in "func.pas";

exports Prove;

end.

// В func.pas:

uses
ShareMem,
windows,
 SysUtils, Variants,
 Classes;

function Prove(fname:PChar; kol:Pointer):boolean; stdcall;

implementation

function Prove(fname:PChar; kol:Pointer):boolean; stdcall;
begin
//integer(kol^):=5;
MessageBox(0,fname,"",0);
result:=false;
end;

MessageBox показывает иероглифы, а после ошибка с access violation..
Одним словом, помогите разобраться.. )


 
Prove   (2005-02-25 05:52) [1]

Рыбяты, все пашет! Если убрать stdcall.
Кто знающий, объясните по-простому, почему ошибка была?

Не понял я в хелпе, что значит передача параметров справа налево.. Это как?

Register, pascal, cdecl, stdcall и safecall - чем отличаются?
И когда все-таки stdcall надо использовать?


 
KSergey ©   (2005-02-25 07:58) [2]

> [1] Prove   (25.02.05 05:52)
> Не понял я в хелпе, что значит передача параметров справа
> налево.. Это как?

Лень.
Надо везде втавить одинаковые соглашения о передаче параметров. Или уж везде stdcall, или уж везде - без него.

ПО основному же вопросу

> Нужно в dll иметь функцию, возвращающую boolean и способную
> при успехе (true) еще и "вернуть" integer

Функцию просто описать как

function Prove(fname:PChar; var kol:Integer):boolean;



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

Текущий архив: 2005.03.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.026 c
14-1108789700
begin...end
2005-02-19 08:08
2005.03.13
С Днём рождения! 19 февраля


1-1109051804
Dil
2005-02-22 08:56
2005.03.13
TTreeView Nodes


1-1109241872
zdn
2005-02-24 13:44
2005.03.13
Дополнительные параметры


14-1108969698
Alex Konshin
2005-02-21 10:08
2005.03.13
Кто переведет с японского?


1-1109453949
StarLit
2005-02-27 00:39
2005.03.13
Как лучше организовать список из двух