Я вот тут подумал про волшебную кнопку ...

 
Доброе время суток всем.
Я читая форум понял, что не только у меня были мысли о горячих кнопках клавиатуры.
Я не силен в СИ. И сам пытаюсь разобраться в програмировании на чужих примерах.
Может кто ас в СИ и скажет, можно ли написать маленькую ДЛЛ для опроса кнопок клавиатуры.?
А каждый юзер уже использует это по своему.
Я, например хотел так: работает советник, может даже в быстром цикле и вызывает ДЛЛ, та опрашивает состояние нужной кнопки и выдает результат, а советник на основании результата уже выполняет действие.
Я понял у SK проблема опроса кнопки советника. В принципе вот выход. Задал кнопку и нажимай, когда надо.
Советник штука хитрая - пока свою работу до конца не доделает, ничего не опрашивает.
Отсюда вопрос про коды ошибок. Я помню, что они 4 значные и начинаются с 4. Нельзя ли еще чтобы эта ДЛЛ генерила например код ошибки 5000 при нажатии кнопки. И в советнике его опрашивать на предмет нажатия (использовать как прерывание, чтобы не дожидаться конца программы эксперта)?

Или я слишком глубоко лезу :)
 
Сумбурно и непонятно. Если про горячие кнопки для скриптов, то они уже давно есть и отлично работают. Если для советников, то непонятна цель. Советники выполняют работу, когда меня на месте нет. А если я рядом, то я сам рулю. А про код ошибки вообще ничего не понял.
 
TraderLM, если ничё навороченого, то есть вариант проще...

скриптам можно назначить хоткей в МТ.
а из скрипта модифицируем глобальную переменную, которую сможет прочитать советник.
 
TraderLM, если ничё навороченого, то есть вариант проще...

скриптам можно назначить хоткей в МТ.
а из скрипта модифицируем глобальную переменную, которую сможет прочитать советник.


ОК хорошая идея, я об этом не подумал. Спасибо
 
Уважаемый TraderLM а не приведете примерчик с использованием "горячих" клавишь? и в скриптах и как Вы написали в советнике.
С уважением
 
Уважаемый TraderLM а не приведете примерчик с использованием "горячих" клавишь? и в скриптах и как Вы написали в советнике.
С уважением


пока не написал опрос в советнике. Не могу сообразить, если переменная выставлена, как распознать на каком окне скрипт сработал.

Вот мой скрипт

//+------------------------------------------------------------------+
//|                                                         Key Close.mq4 |
//|                                                               |
//|                                                               |
//+------------------------------------------------------------------+


int start()
  {
   GlobalVariableSet("KeyClose",1);
   return(0);
  }





Я повесил его в терминале на Alt+C, т.к. предполагал использоват для закрытия ордера.

Работает так. На экране открыто несколько окон. Тыкаешь мышой на любое - оно выделяется. Нажимаешь Alt+C (активирована вкладка ЭКСПЕРТЫ) и видно, что скрипт срабатывает и выгружается (причем видно на какой валюте), переменная устанавливается. А вот как из советника не только опросить переменную, но и определить, на каком окне сработал скрипт(с какой валюты выставили переменную) я пока не понял. :)

Затем думал сделать так, что после уделения ордера переменную опять в 0.

 
пока не написал опрос в советнике. Не могу сообразить, если переменная выставлена, как распознать на каком окне скрипт сработал.
2 варианта:
- для каждого символа своя переменная
- для каждого символа своё значение переменной

;)
 
пока не написал опрос в советнике. Не могу сообразить, если переменная выставлена, как распознать на каком окне скрипт сработал.
2 варианта:
- для каждого символа своя переменная
- для каждого символа своё значение переменной

;)


ОК! По CASE в скрипте сделать перебор всех используемых валют. :)

Komposter, как всегда выручаешь. Спасибо :)
Причина обращения: