Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Il n'y avait pas de fichier attaché...
Avez-vous confirmé que le fichier que vous essayez de lire existe bien ? Regardez dans le bon dossier et vérifiez... Autre chose, pourquoi avez-vous une fonction appelée filewriting() pour lire un fichier ?
Cher RaptorUK,
Oui, je peux confirmer que le fichier DAT se trouve dans le dossier MQL4/files. En fait, j'ai informé que j'ai mis une condition pour que l'ouverture du fichier réussisse et qu'elle réussisse la plupart du temps (90%) et que 10% ne réussissent pas à s'ouvrir et génèrent un code d'erreur 5004.
La fonction filewriting() est appelée lorsqu'un fileopen échoue. Ensuite, la fonction filewriting essaie de créer un fichier (ouvert pour l'écriture) et à la fin de la fonction, fait le fileclose.
J'ai joint le fichier de l'instruction Print() du dossier MQL4\logs. J'ai cliqué sur le bouton "Choose File" et j'ai pu constater que le nom du fichier était affiché.
Chaleureuses salutations,
Raisingfire
Cher RaptorUK,
Oui, je peux confirmer que le fichier DAT se trouve dans le dossier MQL4/files. En fait, j'ai informé que j'ai mis une condition si le fileopen réussit et il réussit la plupart du temps (90%) et 10% échoue à ouvrir et génère un code d'erreur 5004.
La fonction filewriting() est appelée lorsqu'un fileopen échoue. Ensuite, la fonction filewriting essaie de créer un fichier (ouvert pour l'écriture) et à la fin de la fonction, fait le fileclose.
J'ai joint le fichier de l'instruction Print() du dossier MQL4\logs. J'ai cliqué sur le bouton "Choose File" et j'ai pu constater que le nom du fichier était affiché.
Salutations chaleureuses,
Raisingfire
D'où viennent ces fichiers ? Qu'est-ce qui les écrit ?
Cher RaptorUK,
Tous les fichiers DAT sont censés être des fichiers temporaires pour contenir les valeurs initiales de certains indicateurs chaque fois que nous ouvrons une position. Nous les avons créés et utilisés dans nos programmes.
Nous utilisons la fonction standard pour ouvrir le fichier pour l'écriture :
fhandle=FileOpen(mf, FILE_BIN|FILE_WRITE) ;
Écriture du tableau standard dans les fichiers temporaires (DAT) :
FileWriteArray(fhandle, mpara, 0, maxori) ; // où mpara est le tableau, Maxori est la taille maximale du tableau.
Fonction standard de fermeture de fichier :
FileClose(fhandle) ;
Merci pour votre aide.
Salutations,
Raisingfire
Cher RaptorUK,
Tous les fichiers DAT sont censés être des fichiers temporaires pour contenir les valeurs initiales de certains indicateurs chaque fois que nous ouvrons une position. Nous les avons créés et utilisés dans nos programmes.
Nous utilisons la fonction standard pour ouvrir le fichier pour l'écriture :
fhandle=FileOpen(mf, FILE_BIN|FILE_WRITE) ;
Écriture du tableau standard dans les fichiers temporaires (DAT) :
FileWriteArray(fhandle, mpara, 0, maxori) ; // où mpara est le tableau, Maxori est la taille maximale du tableau.
Fonction standard de fermeture de fichier :
FileClose(fhandle) ;
OK, mais vous n'avez pas répondu à ma question... sont-ils écrits par le même EA qui essaie de les lire ? ou par un EA, script ou indicateur différent ?
OK, mais vous n'avez pas répondu à ma question... sont-ils écrits par le même EA qui essaie de les lire ? ou par un EA, un script ou un indicateur différent ?
La fonction d'écriture de fichier est dans tous les cas dans le même EA. Chaque fois que nous émettons un "FILEOPEN", nous le suivons toujours par "FILECLOSE" après avoir effectué certaines tâches avec lui. Je ne pense donc pas qu'il y ait un problème avec le fichier verrouillé que l'on essaie d'ouvrir.
Il y a longtemps, nous avons eu ce genre de problème où un fichier verrouillé était tenté d'être lu. Et MT4 le signalait automatiquement dans son fichier journal. Ainsi, après 1 ou 2 jours, les dossiers Logs et History sont devenus très volumineux (des centaines de Mbytes), remplis de ces rapports. Ensuite, nous émettons un FILECLOSE à chaque fois que nous faisons un FILEOPEN. Le problème a été résolu et les dossiers des journaux et de l'historique ne sont plus jamais devenus énormes. Aujourd'hui, les dossiers journaux et historique combinés ne contiennent que moins de 100 Ko (malgré le code d'erreur 5004 qui ne cesse de s'afficher).
Merci,
Raisingfire
La fonction d'écriture de fichiers est dans tous les cas dans le même EA. Chaque fois que nous émettons un "FILEOPEN", nous le suivons toujours par "FILECLOSE" après avoir effectué certaines tâches. Je ne pense donc pas qu'il y ait un problème avec le fichier verrouillé que l'on essaie d'ouvrir.
Il y a longtemps, nous avons eu ce genre de problème où un fichier verrouillé était tenté d'être lu. Et MT4 le signalait automatiquement dans son fichier journal. Ainsi, après 1 ou 2 jours, les dossiers Logs et History sont devenus très volumineux (des centaines de Mbytes), remplis de ces rapports. Ensuite, nous émettons un FILECLOSE à chaque fois que nous faisons un FILEOPEN. Le problème a été résolu et les dossiers des journaux et de l'historique ne sont plus jamais devenus énormes. Aujourd'hui, les dossiers journaux et historique combinés ne contiennent que moins de 100 Ko (malgré le code d'erreur 5004 qui ne cesse de s'afficher).
Merci pour ces informations. Je suis à court d'idées ... tout ce que je peux vous suggérer maintenant est de créer un test EA qui reproduit le problème que vous pouvez poster ici et envoyer à MetaQuotes dans le cadre d'un ticket de Service Desk et leur demander d'enquêter.
Cher RaptorUK,
Merci pour votre aide et vos informations. Je vais essayer de faire ce que vous m'avez dit.
Encore une fois, je vous remercie.
Salutations,
Cher RaptorUK,
Merci de toute façon pour votre aide et vos informations. Je vais essayer de faire ce que vous m'avez dit.
Encore une fois, je vous remercie.
Salutations,
Existe-t-il une solution à l'erreur 5004 ? Je reçois le même message d'erreur en essayant d'écrire dans un fichier.
Je suis sur la version 765.
Votre aide est très appréciée.