подключить внешнюю dll - страница 2

 
trading_ivest:
igor_m:
сперва надо убедиться , что данная библ просто работает с обычным приложением. (читать программерские сайты ) например http://www.codenet.ru/progr/bcb/dll.php
Эту библиотеку мой знакомый запускал создав ехе - файл на VC++, приложение стартовало нормально, но в индикаторе я не могу правильно задать параметры, не знаю как это сделать на MQL4.
Можете показать .h от либы?


--
rip
 
rip писал (а):
trading_ivest писал (а):
igor_m:
сперва надо убедиться , что данная библ просто работает с обычным приложением. (читать программерские сайты ) например http://www.codenet.ru/progr/bcb/dll.php
Эту библиотеку мой знакомый запускал создав ехе - файл на VC++, приложение стартовало нормально, но в индикаторе я не могу правильно задать параметры, не знаю как это сделать на MQL4.
Можете показать .h от лмбы?


--
rip

Я не владею VC++,  и не совсем понял, какой файл Вас интересует, уточните, пожалуйста.
 
Здравствуйте, у меня следующая проблема. Пишу диплом в своем ВУЗе. и мне была поставлена следющая задача. Точнее часть, которую я никак не могу реализовать.
Есть dll номер 1, реализующаяо пределенный алгоритм прогнозирования поведения ряда (метод главных компонент)
В саму DLL, написанную на Delphi, импортируется процедура нахождения собственных векторов матрицы следующим образом (dll номер 2):

Procedure Sobvec(Pcov,Pevec,Peval:Pointer;m:longint);stdcall;external'sobvdll.dll'index 1;
Таким образом, имеем dll номер 1, которая поключается в МетаЕдитор и dll номер 2, которая подключается к dll номер 1.
Обе dll копирую в "libraries".
При присоединении советника к графику выдается сообщение:
2006.12.08 20:23:48    GlComp_old EURUSD,Daily: cannot load library 'GlComp.dll' (error 126)
Если же процесс объявления импорта процедуры из dll 2 в dll 1 опустить. как опустить и непосредственно обращение к этой процедуре, то вызов dll происходит без ошибки.
Как мне в Метаедиторе описать то, что dll импортируемая в Метаедитор, сама импортирует процедуру, и возможно ли импортировать в метаедитор процедуры вообще?
 
trading_ivest:

Я не владею VC++, и не совсем понял, какой файл Вас интересует, уточните, пожалуйста.
Хотелось бы посмотреть на файлики с расширением .h, в них описываются все ф-ции библиотеки.

--
rip
 
rip писал (а):
trading_ivest писал (а):

Я не владею VC++, и не совсем понял, какой файл Вас интересует, уточните, пожалуйста.
Хотелось бы посмотреть на файлики с расширением .h, в них описываются все ф-ции библиотеки.

--
rip

Библиотеку bgexec.dll создавал не я, мне ее прислали разработчики приложения, которое я использую, и файлов с расширением .h, относящихся к ней, у меня нет. В прикрепленном файле листинг библиотеки, может это Вам поможет.
Файлы:
bgexec_1.txt  5 kb
 

Не получается импортировать DLL. (((

В MS Visual C++ написал DLL:

//MyDll.h

#define MY_EXPORT extern "C" __declspec ( dllexport )
MY_EXPORT int CALLBACK Return1();

//MyDll.cpp

MY_EXPORT int CALLBACK Return1() { return 1; }

//MyDll.def

LIBRARY "MyDll"

EXPORTS Return1 @1

После компиляции получил MyDll.dll и MyDll.lib

Также написал микро прогу на C++ использующую DLL. В настройках проекта указал MyDll.lib. Она нормально работает с DLL.

Далее попробовал импорт DLL из MT4, положив в директорию experts\libraries файл MyDll.dll. В документации ничего про *.lib я не нашел поэтому его не клал.
//ImportDll.mqh (в директории experts\include)
#import "MyDll.dll"

int Return1();

//ImportDll.mq4 (в директории experts\indicators)
#include <ImportDll.mqh>
int init()

{

Print("Return1="+Return1());

return (0);
}

При запуске ImportDll.ex4 пришет: dll calls are not allowed; 'MyDll.dll' - 'Return1'
ПОМОГИТЕ .... я уже мосх сломал ((((((((((((((((((((((((( Мой ICQ: 573794562, e-mail: AKalashnikov84@mail.ru.

 
Andrew84 >>:


При запуске ImportDll.ex4 пришет: dll calls are not allowed; 'MyDll.dll' - 'Return1'

епт, включите в настройках терминала (Ctrl+O) "разрешить вызовы из DLL"

 
Разрешил, не помогает (
Причина обращения: