Mise à jour du MQL4 600 et des tuyaux nommés - page 4

 
oscarin:

Si quelqu'un a encore des problèmes pour gérer les tuyaux nommés dans MT4 v600, voici la façon dont je l'ai résolu :

  • Remplacer CreateNamedPipeA et CreateFileA par CreateNamedPipeW et CreateFileW.
  • Changer les déclarations dans ReadFile et WriteFile (Buffer), afin que je puisse travailler avec des CharArrays (1 octet par caractère) :

  • Utilisation des CharArrays pour communiquer entre le serveur et le client :

Serveur :

Client :

J'ai fait les changements. Mais je reçois beaucoup de messages d'erreur. J'ai joint mon fichier.
Dossiers :
 
J'ai arrêté d'utiliser les pipes tant que je n'ai pas trouvé un serveur de pipes en dehors de mt4 car un mt4-pipserver est bloquant !
 
gooly:
J'ai arrêté d'utiliser les pipes tant que je n'ai pas trouvé un pipe-server en dehors de mt4 car un mt4-pipserver est bloquant !
Qu'utilisez-vous à la place pour communiquer entre deux MT4 ?
 

Ce n'était pas entre 2 mt4 mais entre un script powershell et un mt4 qui envoyait ses nouvelles positions.

Comme le temps n'était pas critique et qu'il s'agissait surtout d'une sorte de preuve de concept, j'ai utilisé des fichiers normaux : mt4 ouvre (et cherche dans le et) et ajoute les lignes et powershell vérifie l'existence du fichier et le lit et le supprime :(

J'ai essayé de me connecter à un serveur de sockets (local) en cours d'exécution (pour mapper les entrées et les sorties) mais le client mt4-socket n'a jamais pu établir une connexion valide :(