Создание собственного расширения MetaTrader (dll) - страница 12

 
kfirmt:
спасибо! у вас есть что-то на C#? потому что мне это ничего не говорит.

kfirmt

Извините за вопрос, но вы вообще-то когда-нибудь кодили на C/C++/C#?

Это не проще, чем пример из этого поста.

 
mladen:
kfirmt

Извините за вопрос, но вы действительно когда-нибудь кодировали на C/C++/C#?

Это не проще, чем пример из этого поста.

Я много кодировал на C#, но не с MetaTrader, так что для меня это в новинку. Я сейчас пытаюсь использовать MetaEditor с кодом, который вы мне дали, но переменные не определены. как я должен определить каждую из них?

 
Mistigri:
Вы имеете в виду "написать веб-сервис", который общается с MT4 dll?

Честно говоря, я не смотрел на это, я написал в MT4 DLL функцию, которая подключается к моему веб-серверу и аутентифицирует пользователей, но на стороне сервера код написан на PHP...

Я могу помочь с частью сокета windows, но я не могу предоставить всю настройку.

Патрик

Привет, Патрик,

Спасибо за видео. Я хотел бы отправлять/получать данные между MT4 и базой данных Mysql. Я пробовал "libmysql.dll" и "mysql-wrapper" (основанный на libmysql.dll), но это кажется не стабильным.

Я нашел пример создания PHP сокета, но он для системы на базе unix, и для его запуска я использую PHP CLI (#!/usr/local/bin/php -q), но моя ОС - windows XP.

Я знаю, что PHP может хорошо работать с Mysql. Возможно ли в Windows XP создать PHP tcp/ip сокет (как сервер) и MT4 EA/Scripts (как клиент) для получения/ввода данных в базу данных Mysql?

Или может быть сделать связь клиент-сервер. То есть советник/скрипты MT4 (как клиент) вызывают PHP страницу на веб-сервере Apache (как сервер - имея WAMP/XAMMP/EasyPHP в windows XP), затем PHP отправляет/получает данные в/из Mysql и отправляет результат обратно в MT4. Возможно ли это?

Есть идеи как это сделать?

Спасибо

=pedma=

 

Привет, Патрик,

Я нашел ответ здесь: "Родной" MQL HTTP-клиент - База кода MQL4

Спасибо

-pedma-

 

MQ4 в dll: индикаторы внутри

Здравствуйте, я ищу следующий mq4 для перевода во внешнюю DLL для использования в Neuroshell. Кто-то пытался помочь мне с этим, но не смог. Может ли кто-нибудь проверить это? CFP и сложные пары - это индикаторы. CFP - сложный индикатор, потому что он одновременно обращается к данным всех валютных пар, чтобы выдать значение (это отдельное окно индикатора с линейным графиком). Дайте мне знать, если вам нужна дополнительная информация!

Файлы:
indicators1.zip  25 kb
 
pipscooper:
Я написал пример проекта, который может помочь тем, кто пытается написать неуправляемую C# DLL и получить к ней доступ из Metatrader. Вы можете посмотреть исходный код для экспорта C# DLL в Metatrader Code Sample, включая загружаемый проект VS. Этот код использует шаблон проекта C# для неуправляемого экспорта Роберта Гизеке (ссылка ниже).

Пример был обновлен для Metatrader Build 600+. Этот пример C# DLL показывает, как экспортировать DLL-функции из C# с помощью пакета NuGet, а затем ссылаться на эти C# DLL-функции из MQL4.

Код для экспорта C# DLL в Metatrader 4 Build 600+

Надеюсь, это кому-нибудь поможет!

 

Как я понимаю, нам нужно поместить важный код в dll, потому что если никто не сможет его декомпилировать.

Но у меня уже есть несколько вопросов о функции и использовании dll.

1.Могу ли я создавать dll-ки только в проектах на C, C++ или C#?

2.Почему я не могу скомпилировать мой mql4-проект непосредственно в dll? Почему Metaquotes не предлагает такую возможность или кто-либо другой, чтобы это работало автоматически?

3.Является ли создание dll для моего существующего проекта большой работой?

Могу ли я делать это каждый раз одинаково, чтобы у меня был пустой dll-проект и мне нужно было только скопировать мои функции из моего индикатора или советника и поместить их в dll-проект?

4.Можно ли поместить в dll также картинку, чтобы не отправлять ее отдельно?

 

Как отсортировать массив metatrader с помощью dll?

 
apprentice coder:
Как я могу отсортировать массив metatrader с помощью dll?

Если вы имеете в виду, как отсортировать его в dll и вернуть отсортированный результат, то единственный способ - передать массив, в котором вы хотите хранить результаты в отсортированном виде, по ссылке в dll.

 
mladen:
Если вы имеете в виду, как отсортировать его в dll и вернуть отсортированный результат, то единственный способ - передать массив, в котором вы хотите хранить результаты в отсортированном виде, по ссылке в dll

Спасибо

Есть ли способ получить массив в качестве возвращаемого значения из функции dll?