Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1444

 
MrBrooklin #:

Здравствуйте, Александр! Может тип данных нужно было задать string, а не int? Вы же, вроде, текст ищите, а не число.

С уважением, Владимир.

На картинке видно, что данные с типом  string ,  тип int возвращает функция  StringFind, а именно номер позиции с которой начинается искомая строка.

В данном случае функция должна была вернуть ноль.

 
Aleksandr Slavskii #:

Что может быть не так

Set - строка, в которой ищем.

txt - что ищем.

почему aaa = -1 ???

А почему отладчик посчитал 7 символов в txt если должно быть 6? А в Set как положено 26

 
Aleksandr Slavskii #:

На картинке видно, что данные с типом  string ,  тип int возвращает функция  StringFind, а именно номер позиции с которой начинается искомая строка.

В данном случае функция должна была вернуть ноль.

Понятно. Спасибо за разъяснение. Теперь познакомился с новой для меня функцией.

С уважением, Владимир.

 
Alexey Viktorov #:

А почему отладчик посчитал 7 символов в txt если должно быть 6? А в Set как положено 26

Да, да, и это тоже странно, спасибо, что тут не так, начал проверять вопрос  Yuriy Bykov , скопировал с отладчика и вставил в код, получилась такая картинка.

 "
 RiskMM" (length: 7)        
 "RiskMM=0.3/0.3/0.3/0.3/0.3" (length: 26)

 Откуда то взялся перенос на другую строку.

Всем спасибо за помощь. Буду разбираться.

Yuriy Bykov
Yuriy Bykov
  • 2023.01.13
  • www.mql5.com
Профиль трейдера
 

А выделенное желтым не может так влиять? Уточняю в целях самообучения.

StringFind

Поиск подстроки в строке.

int  StringFind(
   string  string_value,        // строка, в которой ищем
   string  match_substring,     // что ищем
   int     start_pos=0          // с какой позиции начинать поиск
   );

Параметры

string_value

[in]  Строка, в которой производится поиск.

match_substring

[in]  Искомая подстрока.

start_pos=0

[in]  Позиция в строке, с которой должен быть начат поиск.

Возвращаемое значение

Возвращает номер позиции в строке, с которой начинается искомая подстрока, либо -1, если подстрока не найдена.

С уважением, Владимир.

 
MrBrooklin #:

А выделенное желтым не может так влиять? Уточняю в целях самообучения.

С уважением, Владимир.

int     start_pos=0    Значение по умолчанию

Если его не указывать при передаче в функцию, то подставится ноль.

StringFind(Set, txt);
StringFind(Set, txt, 0);

Это одно и то же.

 
Aleksandr Slavskii #:

int     start_pos=0    Значение по умолчанию

Если его не указывать при передаче в функцию, то подставится ноль.

Это одно и то же.

Понял, Александр. Теперь буду знать.

С уважением, Владимир.

 
Evgeny Dyuka #:

Можно как то отменить вывод ошибок подключения к базе данных?
Например функция DatabaseOpen() печатает ошибку каждый раз когда база залочена и фукция не может получить к ней доступ.
Но у меня это нормальная рабочая ситуация и эта проблема обрабатывается и решается и если надо будет, эту ошибку я сам выловлю и выведу.

В итоге весь лог забит сообщениями о залоченной базе.

ответьте на вопрос, плиз
 
Evgeny Dyuka #:
ответьте на вопрос, плиз

Вроде fxsaber где то выкладывал батник и описание как им пользоваться, но где и как я не помню.

Если не ошибаюсь, то батник надо положить в папку терминала C:\Users\имя пользователя\AppData\Roaming\MetaQuotes\Terminal\E98C5173D8A802F9B8F133E800FDDE2B 

И запускать  батник каждый раз перед запуском терминала.

Решение не особо удобное, но если нет другого, то ...

rem Создали RAM-Drive для Тестера.
imdisk -a -o awe -s 3G -m Z: -p "/fs:ntfs /q /y /v:MT5Tester"

mkdir z:\Tester
mklink /j Tester z:\Tester

rem Кеш оптимизатора будет сохраняться на диске.
mkdir cache
mklink /j z:\Tester\cache cache

rem Временный RAM-Drive, чтобы на него можно было перенаправить log-папки.
imdisk -a -o awe -s 3M -m Y: -p "/fs:ntfs /q /y /v:MT5Tester_Logs"

mkdir y:\logs
mklink /j Tester\logs y:\logs

mkdir y:\logs0
mkdir Tester\Agent-127.0.0.1-3000
mklink /j Tester\Agent-127.0.0.1-3000\logs y:\logs0

mkdir y:\logs1
mkdir Tester\Agent-127.0.0.1-3001
mklink /j Tester\Agent-127.0.0.1-3001\logs y:\logs1

mkdir y:\logs2
mkdir Tester\Agent-127.0.0.1-3002
mklink /j Tester\Agent-127.0.0.1-3002\logs y:\logs2

mkdir y:\logs3
mkdir Tester\Agent-127.0.0.1-3003
mklink /j Tester\Agent-127.0.0.1-3003\logs y:\logs3

mkdir y:\logs4
mkdir Tester\Agent-127.0.0.1-3004
mklink /j Tester\Agent-127.0.0.1-3004\logs y:\logs4

mkdir y:\logs5
mkdir Tester\Agent-127.0.0.1-3005
mklink /j Tester\Agent-127.0.0.1-3005\logs y:\logs5

mkdir y:\logs6
mkdir Tester\Agent-127.0.0.1-3006
mklink /j Tester\Agent-127.0.0.1-3006\logs y:\logs6

mkdir y:\logs7
mkdir Tester\Agent-127.0.0.1-3007
mklink /j Tester\Agent-127.0.0.1-3007\logs y:\logs7

mkdir y:\logs8
mkdir Tester\Agent-127.0.0.1-3008
mklink /j Tester\Agent-127.0.0.1-3008\logs y:\logs8

mkdir y:\logs9
mkdir Tester\Agent-127.0.0.1-3009
mklink /j Tester\Agent-127.0.0.1-3009\logs y:\logs9

mkdir y:\logs10
mkdir Tester\Agent-127.0.0.1-3010
mklink /j Tester\Agent-127.0.0.1-3010\logs y:\logs10

mkdir y:\logs11
mkdir Tester\Agent-127.0.0.1-3011
mklink /j Tester\Agent-127.0.0.1-3011\logs y:\logs11

mkdir y:\logs12
mkdir Tester\Agent-127.0.0.1-3012
mklink /j Tester\Agent-127.0.0.1-3012\logs y:\logs12

mkdir y:\logs13
mkdir Tester\Agent-127.0.0.1-3013
mklink /j Tester\Agent-127.0.0.1-3013\logs y:\logs13

mkdir y:\logs14
mkdir Tester\Agent-127.0.0.1-3014
mklink /j Tester\Agent-127.0.0.1-3014\logs y:\logs14

mkdir y:\logs15
mkdir Tester\Agent-127.0.0.1-3015
mklink /j Tester\Agent-127.0.0.1-3015\logs y:\logs15

mkdir y:\logs16
mkdir Tester\Agent-127.0.0.1-3016
mklink /j Tester\Agent-127.0.0.1-3016\logs y:\logs16

mkdir y:\logs17
mkdir Tester\Agent-127.0.0.1-3017
mklink /j Tester\Agent-127.0.0.1-3017\logs y:\logs17

mkdir y:\logs18
mkdir Tester\Agent-127.0.0.1-3018
mklink /j Tester\Agent-127.0.0.1-3018\logs y:\logs18

mkdir y:\logs19
mkdir Tester\Agent-127.0.0.1-3019
mklink /j Tester\Agent-127.0.0.1-3019\logs y:\logs19

mkdir y:\logs20
mkdir Tester\Agent-127.0.0.1-3020
mklink /j Tester\Agent-127.0.0.1-3020\logs y:\logs20

mkdir y:\logs21
mkdir Tester\Agent-127.0.0.1-3021
mklink /j Tester\Agent-127.0.0.1-3021\logs y:\logs21

mkdir y:\logs22
mkdir Tester\Agent-127.0.0.1-3022
mklink /j Tester\Agent-127.0.0.1-3022\logs y:\logs22

mkdir y:\logs23
mkdir Tester\Agent-127.0.0.1-3023
mklink /j Tester\Agent-127.0.0.1-3023\logs y:\logs23

mkdir y:\logs24
mkdir Tester\Agent-127.0.0.1-3024
mklink /j Tester\Agent-127.0.0.1-3024\logs y:\logs24
rem Убили временный RAM-Drive
imdisk -D -m Y:


Блин. Сначала выложил, а потом увидел, что батник для запрета логов в тестере. 

Ну извините, ничем помочь не могу.

 
Aleksandr Slavskii #:

Вроде fxsaber где то выкладывал батник и описание как им пользоваться, но где и как я не помню.

Если не ошибаюсь, то батник надо положить в папку терминала C:\Users\имя пользователя\AppData\Roaming\MetaQuotes\Terminal\E98C5173D8A802F9B8F133E800FDDE2B 

И запускать  батник каждый раз перед запуском терминала.

Решение не особо удобное, но если нет другого, то ...


Блин. Сначала выложил, а потом увидел, что батник для запрета логов в тестере. 

Ну извините, ничем помочь не могу.

А разве запустить батник проще чем удалить журналы вручную?


Что происходит на сайте? Вставляю один снимок, вижу тот который должен быть, а вставляю сообщение — снимок другой…

Оо!!! Получилось…

Файлы:
01.png  23 kb
Причина обращения: