MetaTrader 4 Client Terminal build 646: Умный поиск, книги в Маркете и обновление окна параметров MQL4-программы - страница 25

 

не вопрос. 100 баксов и ex4 у вас, декомпильнёте и будет у вас код проги. Но вы её не запустите, там ещё примерно столько кода в dll библиотеке. 

 

п.с. Запустите у себя аналогичную прогу и экспериментируйте)) 

 
если смотреть в диспечер, то значит это не только моя беда), значит есть смысл разработчикам поскорее это решить. У меня есть мысль, не связано ли это с какой-нибудь проверкой синтаксиса? Если да, то было бы не плохо вернуть к состоянию до 600 билда. И если такое произойдёт, нужно убрать нафик тот юникод и вернуть старый формат строк.
 
aleksandr25:
если смотреть в диспечер, то значит это не только моя беда), значит есть смысл разработчикам поскорее это решить. У меня есть мысль, не связано ли это с какой-нибудь проверкой синтаксиса? Если да, то было бы не плохо вернуть к состоянию до 600 билда. И если такое произойдёт, нужно убрать нафик тот юникод и вернуть старый формат строк.

Обязательно решим проблему. Это фоновой рескан структуры документа для  интеллисенса тормозит по всей видимости.

 
Посмотрел ролик, проверил редактор с таким же объемом (>7K строк) на Win7 и WinXP.
Замедление точно такое же, как и в ролике, на обеих ОС.

Ренат, заодно посмотрите, пожалуйста, в чем причина жесткой синхронизации двух окон одного текста. До 509-й сборки,включительно, оба окна одного файла были независимы.
Заявку в сервис подавали, давно уже.
 
Renat:

Обязательно решим проблему. Это фоновой рескан структуры документа для  интеллисенса тормозит по всей видимости.





Я ничего не понял)), но жду решения.

 

Второй вопрос, как передать строку в параметре в ДЛЛ? После проклятого 600 билда строка стала другого формата. Синтаксической ошибки нет, но строка string из mql4 не передаётся в char[nn] с с++ DLL. Есть простое решение?

Да, тип строки менять нельзя, потому как с dll работает ещё одна прога на вижуалбейсике, там всё чётко. И ещё, я видел где-то хлопали в ладоши при переходе на новый формат строк, хочу чтобы знали, я ненавижу билд 600+ за это)) и очень надеюсь что у вашей компании появится хороший и сильный конкурент, он вам очень нужен).

 
aleksandr25:


Я ничего не понял)), но жду решения.

Второй вопрос, как передать строку в параметре в ДЛЛ? После проклятого 600 билда строка стала другого формата. Синтаксической ошибки нет, но строка string из mql4 не передаётся в char[nn] с с++ DLL. Есть простое решение?

Да, тип строки менять нельзя, потому как с dll работает ещё одна прога на вижуалбейсике, там всё чётко. И ещё, я видел где-то хлопали в ладоши при переходе на новый формат строк, хочу чтобы знали, я ненавижу билд 600+ за это)) и очень надеюсь что у вашей компании появится хороший и сильный конкурент, он вам очень нужен).

Строки передаются, как раньше без изменений. Только строки теперь юникодовые.

Если надо передать ANSI, в MQL теперь есть преобразователь UNICODE->ANSI. Ещё надо сигнатуру функий поменять в импорте под ANSI. 

 

как её вставить в функцию?

 

func(string) ;

Вот это функция в mql4, напишите как передать стринг в с++ библиотеку. 

 
aleksandr25:

как её вставить в функцию?

func(string) ;

Вот это функция в mql4, напишите как передать стринг в с++ библиотеку. 

Но это для функций, которые принимают юникодовые строки.

// В C++ на экспорт:
declspec(dllexport) void __stdcall func(LPCWSTR szText) {}

// В MQL4:
#import
 void func(string sText);
#import

Для функций с ANSI-кодировкой:

// В C++ на экспорт:
declspec(dllexport) void __stdcall func(LPCSTR szText) {}

// В MQL4:
#import
 void func(uchar &sText[]);
#import
 
Zhunko:
Но это для функций, которые принимают юникодовые строки.


)). ну я так тоже умею, но так не передаётся страка, только первый символ). о чём и речь. вот та прога на 7 косарей строк вдруг перестала работать с этим новым билдом 600+, будь он проклят)). Нужен новый старый формат строки в mql4.

хотя стоп, торможу.  LPCWSTR - это для приёма нового формата строк? хм. странно, почему я это не нашёл в гугле. Я же правильно понял? 

 
aleksandr25:

)). ну я так тоже умею, но так не передаётся страка, только первый символ). о чём и речь. вот та прога на 7 косарей строк вдруг перестала работать с этим новым билдом 600+, будь он проклят)). Нужен новый старый формат строки в mql4.
Дописал пост. Всё нормально работает. Сконвертируйте строку в ANSI.
Причина обращения: