Comment lire et écrire des données en dehors du dossier metatrader ? - page 4

 
qjol:

Vous avez déjà toutes les réponses dont vous avez besoin dans ce post.
La question est de savoir si vous voulez juste que quelqu'un écrive pour vous le code entier.

Non, je veux un exemple de code que je peux utiliser et essayer, c'est tout. Si vous m'aidez, ce sera plus utile pour moi.
 

Cette fonction est définie dans WinFile_v600.mqh autour de la ligne 152 :

int OpenNewFileForWriting(string FileName, bool ShareForReading = false)
{
   int ShareMode = 0;
   if (ShareForReading) ShareMode = WIN32_FILE_SHARE_READ;
   return (CreateFileW(FileName, GENERIC_WRITE, ShareMode, 0, CREATE_ALWAYS, 0, 0));
}



 
gooly:

Cette fonction est définie dans WinFile_v600.mqh autour de la ligne 152 :



Merci de m'avoir donné une idée. J'ai ajouté WinFile_v600.mqh mais j'ai encore l'erreur suivante

OpenNewFileForWriting' - function already defined and has body J'utilise ce code pour lire et ouvrir le fichier dans un chemin particulier.

//+------------------------------------------------------------------+
//|                                              File Read Write.mq4 |
//|                      Copyright © 2008, MetaQuotes Software Corp. |
//|                                       http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2008, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net/"

// êîíñòàíòû äëÿ ôóíêöèè _lopen
#define  OF_READ               0
#define  OF_WRITE              1
#define  OF_READWRITE          2
#define  OF_SHARE_COMPAT       3
#define  OF_SHARE_DENY_NONE    4
#define  OF_SHARE_DENY_READ    5
#define  OF_SHARE_DENY_WRITE   6
#define  OF_SHARE_EXCLUSIVE    7
#include <WinFile_v600.mqh>
#import "kernel32.dll"
   int _lopen  (string path, int of);
   int _lcreat (string path, int attrib);
   int  GetEnvironmentVariableW (string lpName, string& lpBuffer, int nSize);
   int _llseek (int handle, int offset, int origin);
   int _lread  (int handle, string buffer, int bytes);
   int _lwrite (int handle, string buffer, int bytes);
   int _lclose (int handle);
#import

int start()
  {
//----
      string fName=" ";
        string f = "12345678 1 2345678 2 2345678 3 2345678 4 2345678 5 2345678 6 2345678 7 2345678 8 2345678 9 23456789";
        GetEnvironmentVariableW("USERPROFILE", f, StringLen(f));
        fName = f + "C:\Documents and Settings\Administrator\My Documents\Downloads\test.text" + fName;
        int handle;
        handle=OpenNewFileForWriting(fName);  
//----
   return(0);
  }
  int OpenNewFileForWriting(string FileName, bool ShareForReading = false)
{
   int ShareMode = 0;
   if (ShareForReading) ShareMode = WIN32_FILE_SHARE_READ;
   return (CreateFileW(FileName, GENERIC_WRITE, ShareMode, 0, CREATE_ALWAYS, 0, 0));
}
   
 
Il se peut que vous deviez payer un spécialiste pour coder cela pour vous ou que vous deviez lire les documents MT4.
 
gooly:
Il se peut que vous deviez payer un spécialiste pour coder cela pour vous ou que vous deviez lire les documents MT4.

Donc vous n'allez pas m'aider, n'est-ce pas ? S'il vous plaît, j'ai juste besoin d'un exemple de code ?
 

Il est frustrant et inutile de vous aider si vous ne comprenez manifestement pas ce que cela signifie :

'OpenNewFileForWriting' - fonction déjà définie

et que vous modifiez votre code en conséquence.

 
gooly:

Il est frustrant et inutile de vous aider si vous ne comprenez manifestement pas ce que cela signifie :

'OpenNewFileForWriting' - fonction déjà définie

et que vous modifiez votre code en conséquence.


Oui, j'ai compris, merci pour votre aide, maintenant j'ai besoin de lire le fichier et de l'écrire, c'est cette fonction que je dois utiliser pour lire et écrire le fichier, le fichier ? Si oui, quel est le tampon et les octets ?

int _lread (int handle, string buffer, int bytes) ;

int _lwrite (int handle, string buffer, int bytes) ;

 

que vous utilisez déjà

#include <WinFile_v600.mqh>

il n'est pas nécessaire de réimporter la fonction

ankityadav:

OpenNewFileForWriting' - fonction déjà définie et ayant un corps. J'utilise ce code pour lire et ouvrir le fichier dans un chemin particulier.

 
qjol:

que vous utilisez déjà

il n'est pas nécessaire d'importer à nouveau la fonction



Oui, j'ai compris, j'ai modifié mon code et maintenant ça marche.
Raison: