Discussion of article "Communicating With MetaTrader 5 Using Named Pipes Without Using DLLs" - page 2
You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
................
On the one hand we got rid of dll, but on the other hand, again, crutches in other programming languages are needed for application.
The disadvantage of the proposed method is that it is suitable only for programmers who develop applications in languages other than MQL. ...................
You should at least read the title of this topic for the sake of interest
Not anymore. See https://www.mql5.com/ru/forum/7806/page3.
Just note that this is client support, and server connections cannot be created in the terminal.
Not anymore. See https://www.mql5.com/ru/forum/7806/page3.
I'll keep a low profile. Don't tell anyone. Shhhh.....
Oh, you. The developers worked so hard, they made client connections, they wrote the article.
And you what? Instead of giving up everything, learning C and using all this stuff openly and honestly, you are quietly and in the deep underground chasing connectors through dlls.
No matter how much (let's not point fingers) you feed him, he still wants to use dll in the terminal.
Normal heroes always take a detour © N. Korostylev
Write your gateway in MQL5 based on the examples from the above-mentioned article. And you can write client scripts in pure MQL.
Although, I don't understand why you should make such a one-sided solution. Those who will write their own server in C, it is not a problem to connect dll, but the rest of the current functionality will not be enough. Unless the dll slows down the work a lot (which I doubt).
It is about being able to connect from the terminal to third-party systems without using DLLs. The task is accomplished - now there is an easy way to connect and full-duplex data exchange.
The complaint that it turns out that now it is necessary to write a third-party application is misplaced.
Please pay attention to the topic and the gist of the article.
It is about being able to connect from the terminal to third-party systems without using DLLs. The task is accomplished - now there is an easy way to connect and full-duplex data exchange.
The complaint that you have to write a third-party application is misplaced.
Please pay attention to the topic and the gist of the article.
It is about being able to connect from the terminal to third-party systems without using DLLs. The task is accomplished - now there is an easy way to connect and full-duplex data exchange.
The complaint that you have to write a third-party application is misplaced.
In fact, it is true, because it is not declared that by standard methods, i.e. without third-party crutches, communication will be provided, for example, between MQL applications.
"Many developers face the same problem - how to get into the sandbox of the trading terminal without using unsafe DLLs."
There are no claims here and there should be none.
But on the other hand, the most demanded in the application plan task of providing communication between applications written in MQL is very effectively solved by using unsafe dlls on the examples from this article. Since in that article, to implement communication via string messages, it is enough to have only knowledge and experience of programming in MQL5 (the rest of the work, i.e. third-party crutches via Windows API, the author of the article has already done and posted as a ready-made class).
But communication with external systems is more important and applicable. That's what the secure channel was opened for.
And note that the whole implementation is within the framework of standard file operations. No new functions had to be introduced.
Write your own gateway in MQL5 based on the examples from the above article.
Theoretically you can, but practically it will be a crutch, and even simplex.
I have found some information on how to make gateways with minimal costs. It turns out that C++ has a class of streams NamedPipeServerStream(String)
If you call it, it will create a named channel. Then we can wait for a connection by calling the IsConnected method and create a second named channel. We wait for another client to connect to the second channel and redirect information from the first stream to the second one using the method: CopyToAsync(Stream). After that we need to start a subprocess and again using CopyToAsync(Stream), redirect information from the second stream to the first one. This way both named channels will be linked by duplex.
It looks easy, but I have no experience with C++. If it were Java, it would take half an hour with debugging.
So far I have found a suitable example for redesigning: http://msdn.microsoft.com/en-us/library/bb546085.aspx. I will try to build a full-duplex gateway on its basis at my leisure. What if it works?