Обратная связь
Привет, друзья,
Любые отзывы, пожалуйста,
?
Спасибо!
Ну, я не тестировал это. Но если это работает... это здорово!!!
Я проверил демо-файл .mq4, и он такой простой и элегантный. Хорошая работа.
Единственный вопрос, который у меня возник - что делать с новыми строками.
Как использовать gFile для записи новой строки?5why,
Большое спасибо за ваш комментарий.
Я думаю, что вопрос печати новых строк требует доработки, спасибо за замечание.
хорошо сделано , но файловые функции (как и многие другие) могут быть использованы непосредственно из windows API dlls.
пример импорта функции копирования файла:
#import "Kernel32.dll"
bool CopyFileA (string source_file, string destination_file, bool if_exist);
С помощью DLL можно делать множество вещей, например, доступ к базе данных SQL и так далее.
где я могу найти список всех функций, доступных в kernel32.dll (и других .dll для windows)?
Edit: Нашел. См. прикрепленный файл.
Это верно, но?
молодец

пример импорта функции копирования файла:
#import "Kernel32.dll"
bool CopyFileA (string source_file, string destination_file, bool if_exist);
С помощью DLL можно делать множество вещей, например, доступ к базе данных SQL и так далее.Beluck,
Все правильно , но не могли бы вы дать мне .mql демо, показывающее, как использовать функции kernel32 CreateFile, OpenFile, WriteFile и ReadFile в MQL4.
LPCTSTR lpFileName,
DWORD dwDesiredAccess,
DWORD dwShareMode,
LPSECURITY_ATTRIBUTES lpSecurityAttributes,
DWORD dwCreationDisposition,
DWORD dwFlagsAndAttributes,
HANDLE hTemplateFile
);
HFILE OpenFile(
LPCSTR lpFileName,
LPOFSTRUCT lpReOpenBuff,
UINT uStyle
);
BOOL WriteFile(
HANDLE hFile,
LPCVOID lpBuffer,
DWORD nNumberOfBytesToWrite,
LPDWORD lpNumberOfBytesWritten,
LPOVERLAPPED lpOverlapped
);
BOOL ReadFile(
HANDLE hFile,
LPVOID lpBuffer,
DWORD nNumberOfBytesToRead,
LPDWORD lpNumberOfBytesRead,
LPOVERLAPPED lpOverlapped
);gFiles.mqh
alerts.mqh не является частью mtguru1.zip, не удалось запустить FilesDemo? Заранее благодарю.
sx ted,
Извините, я имел в виду"gFiles.mqh".
Чтобы запустить FilesDemo:
1- Распакуйте"mtguru1.dll" по пути"MetaTrader 4\experts\libraries".
2- Распакуйте"FilesDemo.mq4" по пути"MetaTrader 4\experts\indicators" и скомпилируйте его.
3- Распаковать"gFiles.mqh" по пути"MetaTrader 4\experts\include".
4- Загрузите FilesDemo из ваших индикаторов - не забудьте включить"Allow DLL Import".
ted
CodersGuru, спасибо супер, у вас есть эквивалент FileTell()
Обновлено!
CodersGuru, спасибо вам супер, у вас есть эквивалент FileTell()
sx ted,
Я обновил программу. Теперь она включает в себя эти функции:
int gFileOpen(string file_name,int mode);
bool gFileWrite(int handle,string data);
bool gFileClose(int handle);
string gFileRead(int handle,int length=0);
void gFileSeek(int handle,int offset, int mode);
bool gFileDelete(string file_name);
int gFileSize(int handle);
int gFileTell(int handle);
bool gFileFlush(int handle);
bool gFileCopy(string source,string distance,bool IfExists);
bool gFileMove(string source,string distance);
Надеюсь, вам понравится.

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Привет, друзья,
Многие люди спрашивали меня и форум metaquotes о функциях работы с файлами.
Я думаю, что в MT4 есть много ошибок в этих функциях.
1- Они не работают в бэктестинге
2- Они не пишут вне пути "MetaTrader 4\experts\files".
Сегодня я открыл свой Visual C++ и написал dll для работы с файлами для MT4, надеюсь, вам понравится, и ее исходный код, и расскажите мне о своих
.
Установка:
1- Распаковать"mtguru1.dll" по пути "MetaTrader 4\experts\libraries".
2- Распаковать"FilesDemo.mq4" по пути "MetaTrader 4\experts\indicators" и скомпилировать его.
3- Распаковать"gFiles.mqh" по пути "MetaTrader 4\experts\include".
4- Загрузите FilesDemo из ваших индикаторов - не забудьте включить "Allow DLL Import".
5- Наслаждайтесь.