[АРХИВ]Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 5. - страница 349

 
Neo333:
Как блин выключить алерт ???????? почему после нажатия пробела, он ?(!%"?:? продолжает пищать ??????????

надо не пробел нажимать, а кнопку питания, удерживать в течении 5-10 секунд до исчезания сигнала.
 

Господа! Добрый вечер!

Подскажите, пожалуйста, как выполнить задачу: чтобы на графике отображалось локальное/системное время (время компьютера), которое не зависит от последнего тика и от соединения с инетом.

Что сделал я:

1. Зациклил

int init ()
{
   start();
}
int start()
   {
   while(IsConnected())
   {
      RefreshRates();
         if (!IsStopped())
         {
            ...
         }
   }
   return(0);
}

 2. Указал время локальное, данное в терминале:

Comment(TimeHour(TimeLocal()), ":", TimeMinute(TimeLocal()), ":", TimeSeconds(TimeLocal()))

НО, при разрыве связи с нетом, после 3-6 минут время перестает обновляться, а нужно, чтобы обновлялось не взирая на инет, или тик. +ко всему, зацикленный код хорошо подтормаживает график.

Подумал, что можно вытащить время с помощью #import "User32.dll"/"Win32.dll" а может из "kernel32.dll" - int GetSystemTime() - вот тут постал вопрос как же это сделать. Не могу разобраться.

Прошу помощи!

 
smartemiy:

Господа! Добрый вечер!

Подскажите, пожалуйста, как выполнить задачу: чтобы на графике отображалось локальное/системное время (время компьютера), которое не зависит от последнего тика и от соединения с инетом.

Что сделал я:

1. Зациклил

 2. Указал время локальное, данное в терминале:

НО, при разрыве связи с нетом, после 3-6 минут время перестает обновляться, а нужно, чтобы обновлялось не взирая на инет, или тик. +ко всему, зацикленный код хорошо подтормаживает график.

Подумал, что можно вытащить время с помощью #import "User32.dll"/"Win32.dll" а может из "kernel32.dll" - int GetSystemTime() - вот тут постал вопрос как же это сделать. Не могу разобраться.

Прошу помощи!

Если это индикатор, то тиков нет - обновляться не будет. Надо в зацикленном скрипте или эксперте.

На всякий случай, надо этой функцией пользоваться.

 
Zhunko:
Тиков нет - обновляться не будет. Надо в зацикленном скрипте или эксперте.


  Только в скрипте, советник тоже остановят при разрыве связи.
 
FAQ:

  Только в скрипте, советник тоже остановят при разрыве связи.

Зацикленный не остановится.

Ха! Внимательно посмотрел... Так у него зациклено. Это скрипт или эксперт. А в условиях цикла стоит проверка на наличие связи. Вот и не работает.

 
Zhunko:

Зацикленный не остановится.

Ха! Внимательно посмотрел... Так у него зациклено. Это скрипт или эксперт. А в условиях цикла стоит проверка на наличие связи. Вот и не работает.


Верно. Это эксперт.

То есть, необходимо убрать проверку на наличие связи?

int init ()
{
   start();
}
int start()
   {
   while(true)
   {
      RefreshRates();
            ...
   }
   return(0);
}

 

 

А  TimeToStr(datetime value, int mode=TIME_DATE|TIME_MINUTES) тоже зависит от тика

 
smartemiy:


Верно. Это эксперт.

То есть, необходимо убрать проверку на наличие связи? 

А  TimeToStr(datetime value, int mode=TIME_DATE|TIME_MINUTES) тоже зависит от тика

Зацикливать надо так:

while(!IsStopped())
 {
  ...
 }
Каким образом функция преобразования зависит от тиков?

Ещё рекомендую старт из инита убрать. Это не спортивно :-)) Старт ведь зациклен. Инит никогда не кончится. Это документацией запрещено. 

 
Zhunko:

Зацикливать надо так:

Каким образом функция преобразования зависит от тиков?

Ещё рекомендую старт из инита убрать. Это не спортивно :-)) Старт ведь зациклен. Инит никогда не кончится. Это документацией запрещено. 

Ф-я преобразования преобразовует, а изменения переменной в этой ф-ии не изменится в отсутствие тика. TimeToStr(TimeLocal(), TIME_MINUTES) - зависит от тика.

 

А есть идеи как вытащить время из Win32/User32, чтобы не зацыкливать советник?

 
Нужен скрипт
 
FAQ:
Нужен скрипт

с тем же зацикливанием?