Errors, bugs, questions - page 1333

 

I wonder what that would mean? Very interesting. Especially on a real account. Without checking anything, my broker updated, below is the result.

MT4 terminal, b. 845 before the upgrade,
And after the upgrade to b. 851

And so in all terminals on all pairs. W XP 32 bit.

What shall we do ? So far a fabulous joy. This is the first time in the whole history of MT4.

Files:
22705.png  54 kb
22706.png  32 kb
 
Sergey Kucher:

I wonder what that would mean? Very interesting. Especially on a real account. Without checking anything, my broker updated, below is the result.

MT4 terminal, b. 845 before the upgrade,
And after upgrade to b. 851

And so in all terminals on all pairs. W XP 32 bit.

What shall we do ? So far a fabulous joy.

Need more details and need indicators to reproduce the problem. Write to servicedesk.

 
Alexander:

Need more details and need indicators to reproduce the problem. Write to servicedesk.

Try installing this indicator on MT4 build 851 and everything will become clear.
Files:
OSMA1.mq4  3 kb
 
Sergey Kucher:
Try installing this indicator on MT4 build 851 and everything will become clear.
Check
 

Dear developers!

CCanvas class is missing an important functionality - it's the thickness of drawing. This raises a question - will you add this functionality to CCanvas class?

If you don't plan to add this feature, please make PixelSet method virtual, otherwise you will have to rewrite half of the class in inheritance. And I consider it a bad idea to change anything in the standard library classes myself, or even harmful, because when you update the terminal or install it, you will have to change everything back, and you can't remember all the changes after a while.

Here is CCanvasNew class as inherited class. What would make the class work properly, you need to make a change to the PixelSet method of the base CCanvas class, i.e. make it virtual.

The line:

void              PixelSet(const int x,const int y,const uint clr);

replace by:

virtual void      PixelSet(const int x,const int y,const uint clr);
Files:
CanvasNew.mqh  5 kb
 

Error during compilation

#property library
class name {};
class A {
public:
        int name() { Print( __FUNCTION__ ); return 0; }
        void f();
};
void A::f()
{
                name(); //1//нормально - вызывается A::name()
        int i = name(); //2//ошибка при компиляции
}
void OnStart()
{
	A a;
	a.f();
}
what is the difference between 1 and 2 ?
 

Explanation of application #1268334

Notepad

MetaEditor

 

The documentation states:

"Global variables exist in the client terminal for 4 weeks after the last access, after which they are automatically deleted. An access to a global variable is not only setting a new value, but also reading the value of the global variable" .

I have global variables read every day. And in spite of this, they are still destroyed. I have to re-create them every month. I would really like you to fix this inconsistency in MT4 documentation.

 
Igor733:

The documentation states:

"Global variables exist in the client terminal for 4 weeks after the last access, after which they are automatically deleted. An access to a global variable is not only setting a new value, but also reading the value of the global variable" .

I have global variables read every day. And in spite of this, they are still destroyed. I have to re-create them every month. I would really like you to fix this inconsistency in MT4 documentation.

Are you sure you have not confused the term "Global Variable" with "Client Terminal Global Variable"?
 

Tapochun:
А Вы точно не перепутали понятие "Глобальная переменная" и "Глобальная переменная клиентского терминала

I meant terminal variables. Not confused. GlobalVariableSet("_LastBalance",MathMax(AccountEquity(),GlobalVariableGet("_LastBalance"))); If you create a variable from the terminal and then only read it in the EA, it will still be deleted after a month.
Reason: