Metatrader 4 build 418 ... - page 3

 

...

The end of the "saga" ?

MetaTrader 4 Client Terminal build 419
  1. Terminal: Fixed display of dialogs in the case of incorrect or corrupted settings of the dialog coordinates. Now the dialogs are never displayed outside screen coordinates.
  2. Terminal: Fixed terminal crash during shutdown with one of the dialogs open (list of objects, indicators, global variables, archive of quotes, etc.)
  3. Terminal: Fixed display of text information of coordinates of the horizontal and vertical line objects in the chart, in the case of scaling of displayed fonts in the control panel. Now the size of the text does not depend on the scale and has the same font as the main information in the chart.
  4. Terminal: Improved terminal interface in Korean and Turkish.
  5. MQL4: Fixed return of double from the DLL functions.
  6. Fixed errors reported on the forum and in crash logs.

The update is available through the LiveUpdate system from April 2, 2012.

Haven't tried it yet (my broker is still not updating it), so I do not know if it fixes the stuff from build 418 completely

 

Updating Roboforex platform from 418 to 419. Not much different, for signal bar indicator.

Files:
418_build.png  11 kb
 

Trying to update roboforex too, but in the start it says build 418, and the update failed

Edit : finally it's working

 

...

:)

Updated a demo account : it seems that it is working OK (at least the biggest problems are gone judging from a short test) Some more testing is recommended though ....

Big Joe:
Trying to update roboforex too, but in the start it says build 418, and the update failed Edit : finally it's working
 

...

Some other issues reported (at the Russian version especially) for version 419. Some of those issues might affect the work of some EAs too, so, unfortunately, the initial advice as of what to do is still the same ...

 

...

Found this example on metatrader site (just added the #property indicator_separate_window line to make it an indicator, the original post is at this page here : Новая версия MetaTrader 4 Client Terminal build 419 - MQL4 форум)

The thing is that the ArraySize() function is retuning 2 as a size of an array in question instead of 5 and 5 as the value of second ellement of the array and not 2 due to compiler "not noticing an error in code" when it comes to array declaration, so expect that some code working with arrays might not work properly with build 419

#property copyright "Alexey Volchanskiy"

#property link "http://robo-forex.ru"

#property indicator_separate_window

double arr[] = {1, 2 3 4 5}; // ??????? ???????

int start()

{

Print("array size ="+ArraySize(arr)); // ???????? 2

Print(arr[0], " ", arr[1]); // ???????? 1 5

return(0);

}
 

Version 419

Mladen,

I interpret what you are saying is that we cannot populate arrays at the time of definition but need to explicitly assign the element values in Init(). This is a real B; I have dozens of indicators with several instances of the implicit assignment in each one.

Can you look into your MT4 crystal ball and give us a reading if this will be fixed in 420 or later or is it T.S. as I found out when I tried to get information out of Metaquotes.

Thanks,

Tzuman

 

...

Tzuman

No and yes. For the no part, see the definition of the array.
double arr[] = {1, 2 3 4 5};[/PHP]

there is only one list separator in the initialization (the first "," (comma) in the list of value). Proper initialization should bee this :

[PHP]double arr[] = {1, 2, 3, 4, 5};

First of all , compiler did not notice that there are list separators missing. Secondly, as a miracle, it "decided" that the second element of what he "thought" to be a 2 element array is 5 (not 2 as it should be). So the problem is deeper actually : compiler has problems in recognizing proper syntax and proper coding, which, in this example is leading to un-expected behavior with arrays, but if the compiler is having problems in recognizing coding errors, it is a fatal flaw to any coding language compiler

Tzuman:
Mladen,

I interpret what you are saying is that we cannot populate arrays at the time of definition but need to explicitly assign the element values in Init(). This is a real B; I have dozens of indicators with several instances of the implicit assignment in each one.

Can you look into your MT4 crystal ball and give us a reading if this will be fixed in 420 or later or is it T.S. as I found out when I tried to get information out of Metaquotes.

Thanks,

Tzuman
 

...

As a continuation to the previous post

This whole thing reminded me of one unfortunate coding episode I had : was doing some stuff in delphi and in the help file it wrote that database can store jpg files among others. Lost 2 weeks you to find in the developers kit that it explicitly was excluded from possible choices ... and I was working like crazy with a false explanation that what I was trying to do is possible. After that I never touched deplhi again ...

____________________________________

This situation is even worse : someone may make an error in coding, compiler will simply ignore the error, a coder will think that everything is OK and, as a result, everything is going to work wrong. I can not imagine a worst case scenario when it comes to coding and using the resulting indicator, script or EA. Compiler is there to check for errors as the first step. If it does not do that, than what good is i for?

The whole situation is not good, not good at all for metatrader the way it is developing now ... If we are forced to keep old version in order to have at least some trust in it, how will anybody come to trust any new version?

 

Now, alpari prompts me to upgrade to 419. can we upgrade to 419?

Reason: