Подскажите, почему падает терминал...... DLL - страница 2

 
bstone >>:

Добавлю четвертый, нормальный, способ:


extern "C" __declspec( dllexport ) __stdcall void yourFunctionName( int arg );


А то за деревьями уже и леса не видно :)

Этот способ в случае с visual studio не фурычит. Только на борланде.

Соглашение о вызове        VC++                   C++ Builder
__stdcall                       _MyFunction@4           MyFunction
__cdecl                             MyFunction            _MyFunction

они искажают поразному. Вот из этой таблицы видно. Так что способа 3.

 
bstone >>:
Кстати, вообще не понимаю, зачем вы лезете в такие дебри, если не особо разбираетесь в них. Может все-таки было бы проще работать на MQL4 ?

 MQL не устраивает по скорости. До сих пор мирился но сейчас настал момент когда просто невозможно выжать больше. Все оптимизировано до нельзя, но результат неудовлетворительный.  Вот почему "лезу". А че делать))) Кому щас легко)))

 
vladevgeniy >>:

Этот способ в случае с visual studio не фурычит. Только на борланде.


Пардон, вы правы. С VC++ не все так просто. Рекомендую использовать .DEF файлы

 

В принципе можно и без них если не большие дебри в программе. Вот такая связка например работает на ура

#pragma comment(linker, "/export:fndll10=_fndll10@4")
extern "C" __declspec(dllexport) int __stdcall fndll10(int p)
{

 return p;
}

 
vladevgeniy >>:

MQL не устраивает по скорости. До сих пор мирился но сейчас настал момент когда просто невозможно выжать больше. Все оптимизировано до нельзя, но результат неудовлетворительный. Вот почему "лезу". А че делать))) Кому щас легко)))

Когда-то давно, сложнейшие программы писались на 8-ми разрядных процессорах и работали достаточно шустро :) Может проблемы в производительности алгоритма? Хотя, конечно, ваше дело.

 
вот проверю.но с алгоритмом думаю врят ли. Там уже все убрано, даже индикаторы не общитываются постоянно а только самый крайний для нулевых данных. Все прошлые данные индикаторов хранятся в массиве. этот подход дает свои дивиденды, ну в общем в MQL я думаю что я достаточно силен. Но выжать больше не могу. Хоршо. Сделаю на ДЛЛ отпишу сюда результаты по скорости. хоть субъективные но отпишу.
 

Ну вот, проверил.)))

Без длл - 22 мин 20 сек

   С длл - 11 мин 18 секунд.

Результат хоть и есть конечно но ожидал большего))) Ну заодно С++ выучил хоть немного, тоже полезно будет.

Хотя нет. Стояли разные настройки у экспертов. Получилась в семь раз разница. Ну вот, это уже другое дело.

 

Добрый день

Подскажите что не так в создании проекта dll для укладки тиков в MSSQL2005

в виде exe работает а вот в dll вынести что то не получается

терминал падает по крешу

проект dll в архиве

при просмотре созданной dll листером от TotalCommander

вижу функции без префиксов и постфиксов

использовал ADO компоненты, помещенные на DataModule

с++ builder 6.0

спасибо

Файлы:
 

Люди добрые 

подскажите в чем же проблема (пост выше)

а то новую тему заводить не хочется

проблема же похожая наверное

 

vladevgeniy пришлите пожалуйста проект библиотеки c++ на VS2008, хотя бы с одной функцией.... а то уже второй день парюсь и все не выходит, пишет dll calls are not allowed; 'dll4.dll'-'dll'. Буду очень признателен.