MetaTrader 5 herunterladen

FileOpen

Einloggen oder registrieren, um einen Kommentar zu schreiben
EMaximilian
19
EMaximilian  

Ich nutze MetaEditor 4 in Windows 10.

Mein Code in OnInit():

string terminal_data_path=TerminalInfoString(TERMINAL_DATA_PATH);

string filename=terminal_data_path+"\\MQL4\\Tester\\Files\\"+"Kurse.txt";

Handle = FileOpen(filename,FILE_WRITE|FILE_TXT);

   if(Handle < 0)

   {

      Print("Failed to open the file by the absolute path "); 

      Print("Error code ",GetLastError());

      PlaySound("Bzrrr.wav"); 

      ExpertRemove();

   }

Hier erhalte ich ständig den Fehler 5002. Ich weiss nicht was ich hier falsch mache.

Kann mir da möglicherweise jemand helfen?

Otto Pauser
1440
Otto Pauser  
Wenn du F1 drückst und nach 5002 suchst siehst du, daß mit dem Filename was nicht passt.
EMaximilian
19
EMaximilian  
Otto Pauser:
Wenn du F1 drückst und nach 5002 suchst siehst du, daß mit dem Filename was nicht passt.

Vielen Dank. Das habe ich kontrolliert! Aber da stimmt meiner Meinung alles!


Otto Pauser
1440
Otto Pauser  
Drück mal bei FileOpen auf F1 und lies unter "Notes" die imho sinnlosen Restriktionen bei Dateinamen.
Carl Schreiber
Moderator
8485
Carl Schreiber  
  1. Bei mir sind die Namen der MT4-Verzeichnisse kleingeschrieben: "..\tester\files".
  2. Außerdem liegt /tester/ nicht in MQL4!

Hast Du das einmal kontrolliert?

Wahrscheinlich wurde das etwas gedankenlos vom MT5 übernommen!

Sonst bleibt immer noch FILE_COMMON.

EMaximilian
19
EMaximilian  
Carl Schreiber:
  1. Bei mir sind die Namen der MT4-Verzeichnisse kleingeschrieben: "..\tester\files".
  2. Außerdem liegt /tester/ nicht in MQL4!

Hast Du das einmal kontrolliert?

Wahrscheinlich wurde das etwas gedankenlos vom MT5 übernommen!

Sonst bleibt immer noch FILE_COMMON.

Danke für den Tipp! Das Flag FILE_COMMON brachte den Erfolg. Außerdem darf in der Variablen filename nicht der absolute Pfad definiert werden. In meinem Fall reichte:

filename="Kurse.txt";

Handle = FileOpen(filename,FILE_COMMON|FILE_WRITE|FILE_TXT);

Mit dem Flag FILE_COMMON wurde die Datei Kurse.txt automatisch im Pfad C:\Users\username\AppData\Roaming\MetaQuotes\Terminal\Common\Files erstellt. Das Verzeichnis Files wurde vom Programm erstellt, da es nicht vorhanden war.

Carl Schreiber
Moderator
8485
Carl Schreiber  
Jetzt kannst Du Dir noch einen Link auf den Desktop legen, um schwupps ins Common-Verzeichnis zu springen.
Einloggen oder registrieren, um einen Kommentar zu schreiben