Этот форум переведен в режим чтения, просим обсуждать вопросы на форумах MQL4.community и MQL5.community
Ошибка 126 при подключении DLLК списку тем |
|
ACHER
25.09.2006 18:54
2 Slawa, Renat ...
ПРОБЛЕМА. Пытаюсь подключить к индикатору DLL. При запуске индикатора в логе сообщение "cannot load library 'tst4.dll' (error 126)". Индикатор: //------------------------------------- #property indicator_chart_window #property indicator_buffers 1 extern int X = 100; #import "tst4.dll" int GetIntValue(int x); #import int init() { return(0);} int deinit() { Comment(""); return(0); } int start() { Print("Started"); int y; y=GetIntValue(X); Comment("Result - ",y); return(0); } //------------------------------------------------------------------------ tst4.cpp: (переделанный ExpertSample.cpp) #define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers #include <windows.h> #include <stdlib.h> #include <stdio.h> //---- #define MT4_EXPFUNC __declspec(dllexport) BOOL APIENTRY DllMain(HANDLE hModule,DWORD ul_reason_for_call,LPVOID lpReserved) { //---- switch(ul_reason_for_call) { case DLL_PROCESS_ATTACH: case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: case DLL_PROCESS_DETACH: break; } //---- return(TRUE); } MT4_EXPFUNC int __stdcall GetIntValue(const int ipar) { printf("GetIntValue takes %d\n",ipar); return(ipar); } //--------End------------------------------------------ Слово "Started" в логе не появляется. Компилятор Borland C++ 6.0. Модуль ExpertSample.cpp компилируется и подключается к индикатору без проблем, слово Started появляется в логе. Все проекты с исходниками лежат в одной и той же папке. Проверено раз 5 с созданием новых проектов DLL - результат такой же. В чем причина? Ведь из кода ExpertSample.cpp я убрал только функции и описания типов, оставив две. Почему со всеми функциями DLL подключается, а с двумя - нет. И что за ошибка 126 - в документации про нее ничего не написано. MT4 build 197 12/09/06 С уважением, Андрей. |
|
Slawa
25.09.2006 20:32
Не хватает какой-нибудь DLL, используемой в свою очередь в Вашей DLL
Попробуйте в командной строке запустить depends tst4.dll И Вы увидите какого компонента не хватает |
|
ld73
02.02.2010 16:10
Странно я воспользовался вашим советом, depends ничего критического не показал, однако длл-ка все же не хочет подгружаться на windows 2003
|
Скачай MetaTrader 5 (300 Кб, веб-установщик) — новый терминал для финансовых рынков
