MetaTrader 4 Build 529 beta released with new compiler - page 26

 
Here is proof that the indicator can be run multiple times.
The indicator attracts in the first 200 bars.
And it looks in the picture, which has been run 2 times.

I came to see about 10 executions when I was rescheduling.

 
mladen:

There is one serious issue with the new metatrader that concerns external string parameters. Initially they have a correct value, but as soon as time frame or symbol is changed the content of a string parameter is lost. Here is a simple example that will show exactly what is happening. That issue also happens when such indicators are used through iCustom() call and that makes any such indicator unusable from any EA or other code

Fixed
 
komposter:
6. Slip in tester "sleeps" not historical time, but real time =)

Corrected

Also corrected items 1 and 2.

Point 3: Debugging

For items 4, 5 we need to know how to reproduce. Step by step. It's not reproducible on the fly.

 
VOLDEMAR:

Caught the moment when the advisor deletes itself plus the terminal hangs



Let's have a chat in the service desk, shall we?

We need the source code of your EA to reproduce the problem

 
Antonsan:
Here is proof that the indicator can be run multiple times.
The indicator attracts in the first 200 bars.
And it looks in the picture, which has been run 2 times.

I came to see about 10 executions when I was rescheduling.


It will be better when you describe your problem in English. With details, step by step
 

I write in Spanish. And I translate with Google.

The translation into English is just as bad, that the Russian translation.

This indicator is prepared to EA and draws only a few bars.
Changing the timeframe I have observed that sometimes the indicator is often repeated on the screen.
Sometimes it seems to run several times and draw the line correctly, other times it seems they are identical copies arranged in history.

This had three identical copies in history, but to reduce the screenshot, only saw two.

 
VOLDEMAR:

Caught the moment when the Expert Advisor deletes itself plus the terminal hangs


This function does not cause an error

extern string symbol =""; // Symbol

string sym    ()
{ 
 string symm = symbol;
 if ( symm == "" ) 
 symm=Symbol () ;
  return (symm);
}

This function causes an error :

extern string symbol    = ""    ; // Symbol 

string sym ()
{
if (symbol=="")symbol = Symbol();
return symbol ;
} 
Странно сейчас тестирую и проверяю под виндовс ХР  проблем нет ...  В сервис деск отправил ...
 
Barbarian:

Renat, have re-read a lot of information about the purpose of X:\Users\xxx\AppData\ in general and X:\Users\xxx\AppData\Roaming. I agree that it is a necessity in terms of creating application-specific user settings in \Roaming, but why move executable files, namely indicators, scripts and EAs to that directory? After all, some EAs will constantly violate the logic of their work because of this, I mean those who use read and write files in their logic.

By the way, following Microsoft's suggestion to use X:\Users\xxx\AppData\ is not supported by anything, most likely, except for single cases. I don't know any trader who lets outsiders (other users) on his PC with terminals, even under his own accounts, UAK is not applicable in this topic at all. This is most likely an exception to the security rules, so this Microsoft trend is not for traders. Hiding your settings and executables in X:\Users\xxx\AppData\Roaming\MetaQuotes\Terminal\B5589D10299052C8D921603EBD1F9752\ from anyone is paranoid about security.


The problem is most likely that the system won't let you write anything to programfiles, which is fine unless you're running as administrator. But as an administrator, the OS is not very safe because you are open to all viruses and such. Rather, the MS is finally coming around to Unix-like behavior, where instead of your own personal folder you have no write access (and tmp of course, but this gets deleted periodically). This is much safer and prevents viruses from spreading, as there are not as many viruses on *nix as on Win. I am all for it. But it would be nice if it was possible to configure for a particular terminal to configure folder with experts, because the common folder for all terminals is not always suitable.
 
Interesting:
I'll add "SymbolSelect" to the list. +1 to the wish for new build descriptions.
What prevents you from building your SymbolSelect function ???
 
ms502040:

Most likely the problem is that the system does not allow you to write anything to programfiles, which is correct, unless you work as administrator. But being an administrator on the OS is not very safe as you have the OS open to all viruses and so on. Rather, the MS is finally coming around to Unix-like behavior, where instead of a private folder you have no write access (and tmp of course, but this gets deleted periodically). This is much safer and prevents viruses from spreading, as there are not as many viruses on *nix as on Win. I am all for it. But it would be nice if it was possible to configure for a particular terminal to configure folder with experts, because the common folder for all terminals is not always suitable.

You probably didn't read my post above where I described what is being written to now using beta versions of MT4. In nix` all work in their own sandboxes completely, only root user puts common programs and distributes rights for their use by other users. The ideology is completely different there, although it seems similar to Microsoft. By the way, I don't mind that beta version writes user settings in X:\Users\xxx\AppData\Roaming\MetaQuotes\Terminal\, I mind the following:

1. That it creates a subdirectory X:\Users\xxx\AppData\Roaming\MetaQuotes\Terminal\B5589D10299052C8D921603EBD1F9752\ which until you get there you will not know its name, in addition it changes its name with every update.

2. This path is used not only for writing user settings, but also for executable files - indicators, Expert Advisors, scripts, etc., in general, all the things for which you will not let a stranger on your PC, even under a different user name. Although this, of course, may be avoided later, but at what price.

It is the first point that scares me the most because using read/write to files code for using these operations will become more complicated.

Reason: