Diskussion zum Artikel "Exportieren von Angeboten aus MetaTrader 5 in .NET-Anwendungen mithilfe von WCF-Services" - Seite 3
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
1) Wenn Sie ein x64-Terminal haben, müssen Sie höchstwahrscheinlich Ihr C++-Projekt in x64 neu kompilieren. Um auf der sicheren Seite zu sein, sollten Sie dies so tun: Visual Studio -> Eigenschaften (Ihres C++-Projekts) -> Konfigurationsmanager -> und ändern Sie ihn über die Dropdown-Liste oder <Neu...> auf x64. Kompilieren. Erledigt. Wenn es nicht kompiliert - überprüfen Sie die Referenzen des Projekts, gehen Sie die Compiler-Fehler durch.
2) Ich hatte Probleme mit dem EA, er hat sich nicht einmal initialisiert. Ich habe es erst bemerkt , als ich den EA vom Chart getrennt habe, als der Fehler init fehlschlug (komisch...). Der EA fiel in der Initialisierungsphase in einen unendlichen Schlaf und es ging nur um diese Zeilen (in QService.mqh):
QService::EnterCriticalSection()
{
while (GlobalVariableCheck("QService_CriticalSection") > 0)
Sleep(1);
GlobalVariableTemp("QService_CriticalSection");
}
Nach Debugging und vergeblichen Versuchen, dieses "Sleep(1)" zu verstehen, habe ich den Code durch ersetzt:
QService::EnterCriticalSection()
{
if(!GlobalVariableCheck("QService_CriticalSection"))
GlobalVariableTemp("QService_CriticalSection");
}
P.S: Danke an den Autor des Artikels! Alles ist super!
Sehr interessant... Danke... Aber vielleicht gibt es heute einfachere Möglichkeiten*???
Natürlich gibt es die - mit der Verbindung über die eingebaute Fähigkeit des Terminals. Es ist ein PIPE-Kanal.
https://www.mql5.com/ru/docs/files/fileopen
Ich habe gerade einen neuen Auftrag auf der Grundlage dieses Artikels veröffentlicht: https: //www.mql5.com/en/job/34392.
Es funktioniert nicht in meiner MT5 64 bits Umgebung...
Toller Artikel!
Danke
Nur um zu wissen, habe ich herausgefunden, was auf meinem 64-Bit-Rechner passiert ist.
Nach stundenlangem Forschen und Debuggen entdeckte ich, dass eine referenzierte Assembly nicht geladen wurde und die Ausnahme "System.IO.FileNotFoundException: Unable to load file or assembly 'QExport.Service, Version=1.0.5771.13857, Culture=neutral, PublicKeyToken=56996a45dd1e337b'".
Vielleicht weil die dll keine Konfigurationsdatei hat, ich weiß es nicht, MT 5 wusste nicht, wo die Assembly zu finden ist. Also versuchte es, sie im Basispfad zu finden (Pfad, in dem sich metaeditor64.exe befindet). Nachdem ich das Ausgabeverzeichnis der referenzierten Projekte auf diesen Pfad geändert hatte, funktionierte alles wie am Schnürchen.
Hallo Joe,
Gibt es einen speziellen Trick, um es auf x64 zum Laufen zu bringen? Ich habe es gerade für x64 kompiliert, aber die DLL stürzt beim Starten mit seltsamen Fehlern ab.
Sabe, siehe meine Antwort unten.
[]'s
Hallo,
ich hbabe deine fertige Datei getestet, In MT5 sieht alles gut aus. Nur es kommen keine Daten im WinClient an.
Ich frage mich, ob es ein ähnliches Projekt mit Pre-Loading von historischen Balken gibt? Ich würde gerne alles zu Lightweight-Chart hinzufügen und das Diagramm bequem verwenden.