Diskussion zum Artikel "Communicating With MetaTrader 5 Using Named Pipes Without Using DLLs" - Seite 4
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Bei der Übertragung von Zeichenketten werden 4 Bytes ihrer Größe zuerst übertragen.
Die Funktion zum Empfangen von Daten mit Angabe der expliziten Puffergröße wurde korrigiert.
Ich habe den Grund verstanden, warum die Rückübertragung nicht funktioniert hat - ich habe die Länge der übertragenen Daten nicht angegeben.
Ich danke Ihnen sehr. Alles hat funktioniert.
Pipes sind mächtig. Respekt an den Autor des Artikels.
Das wurde in der letzten Version von MetaTrader 4 gemacht.
Pipes in 4 funktionieren ähnlich wie in 5, auch durch Dateioperationen.
Wir werden einen Artikel für MT4 veröffentlichen.
Pipes in 4 funktionieren ähnlich wie in 5, auch durch Dateioperationen.
Wir werden einen Artikel für MT4 veröffentlichen.
Hallo, kann ich ein einfaches Beispiel für MT4 haben? Ich rechne natürlich nicht mit einem Artikel.
Mich interessiert konkret, wie ich drei Parameter aus meinem selbstgeschriebenen Programm in einen Expert Advisor im Terminal einlesen kann.
Es wurde mit dem letzten Build von MetaTrader 4 erstellt.
Auf MT5 scheint alles gut zu funktionieren.
Der einzige Punkt:
Sonst hängen wir in der WaitForRead-Methode auf unbestimmte Zeit fest, obwohl die Serverseite schon lange geschlossen ist. All dies wurde unter Win7-64 geprüft.
Ich habe die WaitForRead-Methode auf der Serverseite mit Timeout und einigen anderen Tricks versehen und ein funktionierendes System mit automatischen Reconnects auf beiden Seiten des Kanals erhalten,
aber es ist alles ein bisschen "krüppelig".
Auf MT5 scheint alles gut zu funktionieren.
Der einzige Punkt:
Sonst hängen wir in der WaitForRead-Methode auf unbestimmte Zeit fest, obwohl die Serverseite schon lange geschlossen ist. All dies wurde unter Win7-64 geprüft.
Ich habe die WaitForRead-Methode auf der Serverseite mit Timeout und einigen anderen Tricks versehen und ein funktionierendes System mit automatischen Reconnects auf beiden Seiten des Kanals erhalten,
aber es ist alles ein bisschen "krüppelig".
Von unserer Seite war es eine Demonstration der Möglichkeit.
Bitte posten Sie Ihre Variante der Klasse. Wir werden die Standardklasse fertigstellen.
Der Client-Teil selbst sieht ungefähr so aus:
Der Punkt ist, dass die FileSize-Methode, die während des Wartens auf Daten verwendet wird, eine Verbindungsverletzung nicht erkennt (anscheinend prüft sie nicht).
Timeout hilft, aber IMHO nicht in allen möglichen Situationen. Es wäre gut, alle diese Fehler in der FileSize-Methode zu überprüfen.
Seltsam...
Bilder aus dem Puffer kommen nicht in die Kommentare und genau wenn man alt+PrntScr benutzt und in den Editor einfügt, wird das Bild eingefügt, aber die Nachricht kommt nicht in den Zweig.
Okay, das Problem ist, dass das Testbeispiel aus dem Artikel nicht durchgeht
Aber im Terminal protokolliert das Skript nichts, bis ich es aus dem Diagramm lösche.
und dann sehe ich im Log
Win7x64 Build 787 vom 21. März 2013
Gerade überprüft, alles funktioniert.
In MQ5 müssen Sie nur die Zeile
Gerade überprüft, alles funktioniert.
In MQ5 muss man nur die Leitung ersetzen
Ich habe keine ...
Ich habe die Zeile ersetzt, sonst würde es nicht kompilieren.