Замена функций файлов MT4. - страница 4

 
tworkman:
Кроме того, я не эксперт, но из того немногого, что я узнал о winsock, функции прослушивания являются блокирующими функциями, что означает (я думаю), что приложение (mt4) должно быть многопоточным. Оно должно переключаться туда-сюда между прослушиванием входящего сообщения и выполнением собственной работы.

mt4 уже является многопоточным. Каждый график имеет свой собственный поток. Для того чтобы использовать блокирующие функции winsock, нужно прикрепить к графику скрипт с непрерывным циклом. Скрипт может устанавливать/сбрасывать некоторые глобальные переменные, которые, с другой стороны, могут быть использованы любым советником.

 
 

MT4 в SQL сервер - как перенести данные?

Beluck:
хорошо сделано , но файловые функции (как и многие другие) могут быть использованы непосредственно из windows API dlls.

пример импорта функции копирования файлов:

#import "Kernel32.dll"

bool CopyFileA (string source_file, string destination_file, bool if_exist);

С помощью DLL вы можете делать много вещей, например, доступ к базе данных SQL и так далее.

Получить записи торгов и котировки MT4 в базу данных SQL было бы здорово.

Но я не знаю, как заставить это работать.

Может ли кто-нибудь объяснить шаг за шагом с примерами кода, как автоматически передать эти данные в SQL сервер?

 

codersguru,

Вы все еще думаете, что эти функции на основе сокетов - хорошая идея? Я хотел бы услышать, рассматривали ли вы эту идею вообще? Пожалуйста, дайте мне знать, если у вас не было времени или вы просто отказались от этой идеи.

Спасибо.

 
tworkman:
codersguru,

Вы все еще думаете, что эти функции на основе сокетов - хорошая идея? Я хотел бы узнать, рассматривали ли вы эту идею вообще? Пожалуйста, дайте мне знать, если у вас не было времени или вы просто отказались от этой идеи.

Спасибо.

tworkman,

Моя проблема - это время, я не отказывался от идеи.

Я сообщу вам об обновлении, как только у меня появится время.

 

Привет еще раз,

Я работал с другом, чтобы написать dll на c++, которая делает эти netcomm вещи, но я не могу пройти мимо проблемы, упомянутой выше: cannot call function functionname from dll ' dllname.dll'.

Если и когда у вас будет время, не могли бы вы взглянуть на исходники и сообщить мне, если вы видите, что не так? Мы действительно пробовали компилировать двумя разными компиляторами c++, и все равно получаем ту же ошибку. Мы даже взяли пример исходного кода, который поставляет mt4, и получили ту же ошибку при попытке вызвать эти функции. Похоже, что это должно быть проблемой компиляции.

Пожалуйста, дайте мне знать.

Спасибо.

 
tworkman:
Еще раз привет,

Я работал с другом, чтобы написать dll на c++, которая делает эти netcomm вещи, но я не могу пройти мимо проблемы, упомянутой выше: cannot call function functionname from dll ' dllname.dll'.

Если и когда у вас будет время, не могли бы вы взглянуть на исходники и сообщить мне, если вы видите, что не так? Мы действительно пробовали компилировать двумя разными компиляторами c++, и все равно получаем ту же ошибку. Мы даже взяли пример исходного кода, который поставляет mt4, и получили ту же ошибку при попытке вызвать эти функции. Похоже, что это должно быть проблемой компиляции.

Пожалуйста, дайте мне знать.

Спасибо.

tworkman,

Вы пробовали исходный код моей dll? Она написана на VC++.

Пожалуйста, попробуйте скомпилировать мой исходный код и расскажите мне, что у вас получилось.

 
tworkman:
Мы даже взяли образец исходного кода, который поставляет mt4, и получили ту же ошибку при попытке вызвать эти функции. Похоже, это должно быть проблемой компиляции.

Пожалуйста, дайте мне знать.

Спасибо.

Это нехорошо. У меня нет проблем с компиляцией. Возможно, это слишком просто, но вы включили вызов функций DLL из MT4?

 
michal:
Это не очень хорошо. У меня нет проблем с компиляцией. Возможно, это слишком просто, но вы разрешили вызов функций DLL из MT4?

Конечно, вы должны включить "Разрешить импорт DLL".

 

Да, у меня установлен флажок Allow DLL Imports.

Когда я пытаюсь открыть файл dsw вашего кода, я получаю предупреждение о том, что проект должен быть преобразован в текущий формат VC++. Я использую версию .Net. Может ли это быть проблемой? Я очень мало знаю о C++, поэтому я не пробовал идти дальше. Друг, который мне помогал, в последнее время был недоступен.