Еще раз о возможности компиляции mql файла из командной строки - страница 2

 
chv:

Можно взглянуть на это по-другому - я предлагаю разработчикам "выходить из тени", и соотношение докумен. / не документир. функций перераспределять в сторону первых за счёт последних ;). В идеале это соотношение должно стремиться к +бесконечности.

Звучит слишком романтично для того, чтобы воплотиться в реальность. Испокон веку разработчики жестко ограничивали пользователей, чтобы обеспечить заданный уровень безопасности. Соотношение докумен. / не документир. функций наверняка установлено еще в начале разработки и не будет меняться из-за "прихотей" пользователей.

"Я так думаю"

 
А вот это дело. Сегодня поздно, завтра с утра.
Ну да, что-то подобное есть в штатном скрипте Period_converter.mq4. Там, правда, просто обновление окна, но принцип работы остается.

А насчет соотношения "документированное/недокументированное" и правда не стоит так уж обольщаться, не будет оно стремиться к бесконечности. Есть, например, резервированные константы, а также функции/классы/прочее, которые просто еще не до конца реализованы, но как минимум объявлены. Зачем их документировать?
 
Mathemat писал (а): А у меня новый аватар!

Pudiera pedirle que me de su autografo, comandante Che?

Вот что получилось с недокументированными командами. Это, практически, тот же советник Романа (DAF'a), что и в первоисточнике, только переключение ТФ закольцовано. Проверил на демо, работает чистенько, без фокусов. Пусть постоит недельку, посмотрим, что он дает.

//+------------------------------------------------------------------+
//|                                                  TF_proba_v1.mq4 |
//|                      Copyright © 2005, MetaQuotes Software Corp. |
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//|Подключение библиотек                                             |
//+------------------------------------------------------------------+
#include <WinUser32.mqh>
//+------------------------------------------------------------------+
//| Ф-ция недокументированных команд терминала                       |
//+------------------------------------------------------------------+
 
void KeyScript()
{
int hwnd;
//---переход на М30
 
   hwnd=WindowHandle(Symbol(),Period());
   PostMessageA(hwnd,WM_COMMAND,33140,0);
   Sleep(10000);
//---возврат на М1
   hwnd=WindowHandle(Symbol(),Period());
   PostMessageA(hwnd,WM_COMMAND,33137,0);
}
 
int init()
{
    return(0);
}
int deinit()
{
    return(0);
}
int start()
{
//if(Period()==1 && Volume[0]<2)
   KeyScript();
   return(0);  
}
// the end.

В принципе, частная задача решена, всем огромное спасибо! Но хотелось бы расширить перечень недокументированных команд. Может Роман отловил еще какие, или у кого-нибудь есть данные, поделитесь, пожалуйста!

Вариант Integer'a проверю чуть позже, быт заел.

 
Mathemat:
А насчет соотношения "документированное/недокументированное" и правда не стоит так уж обольщаться, не будет оно стремиться к бесконечности. Есть, например, резервированные константы, а также функции/классы/прочее, которые просто еще не до конца реализованы, но как минимум объявлены. Зачем их документировать?

Вот, кстати, попался под руку ответ Slaw'ы, на вопрос о возможности опубликовать недокументированные команды.

Slawa 06.04.07 13:57

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