Для полного счастья в МТ 4 не хватает функции типа GetURL(), в частноти очень была бы полезна возможность передавать таким образом данные в скриптах. Можно ли надеяться что такая возможность появится в следующих билдах, если нет то подскажите пожалуйста, можно ли этого добиться с помощью каких либо библиотек.
- Когда веб-терминал незаменим
- Торговые советники и собственные индикаторы - Алгоритмический трейдинг, торговые роботы
- Исполнение по запросу - Открытие и закрытие позиций - Торговля - MetaTrader 5 для iPhone
Извините, но что Вы имеете в виду под "функцией типа GetURL() " ?
Функция GetURL() используется в некоторых скриптовых языках (например ActionScript Flash), для открытия окна браузера или передачи данных другому приложению по URL для выполнения скрипта на сервере. Подробно об этой функции можно прочитать тут http://spravkaweb.ru/flash.php?ss=11
Функция GetURL() используется в некоторых скриптовых языках (например ActionScript Flash), для открытия окна браузера или передачи данных другому приложению по URL для выполнения скрипта на сервере.
Из соображений безопасности это абсолютно исключено.
Мы заботимся о безопасности использования кода MQL4 и не предоставляем встроенных
возможностей для передачи данных наружу (даже почта отправляется только на один указанный в настройках емайл, а не на любой ящик). Естественно, остается возможность использования функций
вида ShellExecute из стандартных DLL библиотек, но импорт функций из DLL по умолчанию в MQL 4
запрещен.
ps: GetURL во флеше - это нормально, ибо флеш работает в окружении вебсайтов.
Но в MQL - это огромная дыра в безопасноти.
Не буду приводить своих контраргументов, дабы не вступать в дискуссию. Хотелось бы только чтобы Вы прокоментировали, что Вы имеете в виду когда говорите что - " импорт функций из DLL по умолчанию в MQL 4 запрещен", для чего тогда - #import
Если можно еще вопрос, вот попробовал написать:
#import "user32.dll"
int MessageBoxA(int hWnd ,string lpText,string lpCaption,int uType);
#import
int init()
{
int cnt;
Alert("Alert");
MessageBoxA(5,"MSGBox","MSGBox",0x00000001);
}
alert срабатывает msqbox нет, в чем ошибка ?
#import "user32.dll"
int MessageBoxA(int hWnd ,string lpText,string lpCaption,int uType);
#import
int init()
{
int cnt;
Alert("Alert");
MessageBoxA(5,"MSGBox","MSGBox",0x00000001);
}
alert срабатывает msqbox нет, в чем ошибка ?
S_java, "импорт функций из DLL по умолчанию в MQL 4 запрещен" -
это значит что когда добавляешь индикатор, диалоге есть чекбоксик "разрешить импорт dll".
Пользователь выставляя галочку, осознанно соглашается что он во власти всех dll импортируемых в индикаторе.
2Renat - все конечно хорошо, но честно говоря запаришься ставить эту галку когда отлаживаешь dll.
Думаю будет разумно, будет вынести в настройки эту галку.
это значит что когда добавляешь индикатор, диалоге есть чекбоксик "разрешить импорт dll".
Пользователь выставляя галочку, осознанно соглашается что он во власти всех dll импортируемых в индикаторе.
2Renat - все конечно хорошо, но честно говоря запаришься ставить эту галку когда отлаживаешь dll.
Думаю будет разумно, будет вынести в настройки эту галку.
Хмм.. посмотрел. Есть в настройках эта галка :)
Хорошо ! :)
Хорошо ! :)
Главный принцип такой - "скрипты должны быть безопасны по умолчанию".
Чтобы не получилось так, чтобы мы пережили этап поголовных проблем с безопасностью
как в броузере Internet Explorer. То есть, надо учиться на чужих ошибках и не допускать их
в собственных разработках.
Чтобы не получилось так, чтобы мы пережили этап поголовных проблем с безопасностью
как в броузере Internet Explorer. То есть, надо учиться на чужих ошибках и не допускать их
в собственных разработках.
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь