Импорт функций из DLL

 

Здравствуйте друзья!!!

Подскажите пожалуйста каким кодом MQL вызвать функцию из внешней DLL (в моем случае это будет DLL библиотека написанная на Delphi и в ней функция с основным алгоритмом возвращает сигнал 0 или 1)
И еще если я правильно понимаю процесс надо еще загрузить библиотеку в память кодом MQL.

Подскажите пожалуйста как это сделать. А если нетрудно простенький шаблончик дайте кода который что-то подобное делает.

Заранее Вам очень признателен!!!!!

 


О мой дорогой друг как тебе повезло что у тебя есть я.... Тут вобще очень мало народу пишет на Дельфях. Ну собственно вызывать надо как обычно смотри:

описываем:

#import "Project3.dll"  
int CreateFile(string Patch,string symbol,int Prise);


вызываем:

 CreateFile(Patch,Symbol(),ask);
В данном примере CreateFile ничего не возвращает но это дело решаемое если надо что-то получить то как все нормальные люди приравнивай это дело к какой-нибудь переменной и все будет ок. Да и не забудь в дельфях stdcall; удачи. ..
 
Это конечно хороший пример, но он сильно перегружен килобайтами. Компиляция в Delphi 6.0 даёт DLL'ку размером 113 кБ. А если не использовать модули SysUtils и Classes, то размер библиотеки уменьшится до 8 кБ. Вообщем, рекомендую в качестве шаблона DLL для Delphi использовать такой код:

library example;
 
function kvadrat(x: double): double; stdcall ;
 begin
   Result:=x*x;
 end;
 
exports  kvadrat;
 
begin
end.
... и подключать модули командой uses только при фактической нужде в этом.