Until the last MT4 version 1170 you could use the sign "../" in the FileIsExist function and therefore you could actually enter into the template folder, even if the FileIsExists searches in MQL4 \ Files directory.
So if you still use an old version you can find the template file by the path "../../templates"
But if you use the 1170 version, it seems that it's not working.
I'll glad to know if you found any way to do it.
so for clarify my mind ,
i use build 1170 version 4 , the installation create one folder template in C:\FOREX\MetaTrader\templates (where live metarader.exe) and other C:\Users\pc\AppData\Roaming\MetaQuotes\Terminal\B6FECCFE53E01D2BAC26AAD9B14029A8\templates
i copy in both folder BollingerBands.tpl , and not work , return me always not exist blablabl..
but if i specify a path filexist should find in other path ???
i try to use
if(FileIsExist("../templates/BollingerBands.tpl"))
but have the same problem:(
thankz again at all
i answer me in part
For security reasons, work with files is strictly controlled in the MQL4 language. Files with which file operations are conducted using MQL4 means, cannot be outside the file sandbox.
If common_flag = FILE_COMMON, then the function looks for the file in a shared folder for all client terminals \Terminal\Common\Files, otherwise the function looks for a file in a local folder (MQL4\Files or MQL4\Tester\Files in the case of testing).
f .... hell :|
Hi
copy tpl file to Files folder, then you can use the code.
ChartApplyTemplate(ID_CHART,"\\Files\\BollingerBands.tpl");
use the code to save tpl to Files folder.
ChartSaveTemplate(ID_CHART,"\\Files\\BollingerBands.tpl");https://www.mql5.com/en/docs/chart_operations/chartapplytemplate
- www.mql5.com
so for clarify my mind ,
i use build 1170 version 4 , the installation create one folder template in C:\FOREX\MetaTrader\templates (where live metarader.exe) and other C:\Users\pc\AppData\Roaming\MetaQuotes\Terminal\B6FECCFE53E01D2BAC26AAD9B14029A8\templates
i copy in both folder BollingerBands.tpl , and not work , return me always not exist blablabl..
but if i specify a path filexist should find in other path ???
i try to use
if(FileIsExist("../templates/BollingerBands.tpl"))
but have the same problem:(
thankz again at all
As I said, it seems that you can't use the "../" in build 1170 :-/
Hi
copy tpl file to Files folder, then you can use the code.
use the code to save tpl to Files folder.
https://www.mql5.com/en/docs/chart_operations/chartapplytemplateHi Trinh,
The problem is that at the new build 1170, the function ChartSaveTemplate save the file at the templates directory and refuse to save it in other directories.
On the other hand, the function FileIsExist (on the new build 1170) can't find files if they are outside the Files directory.
I asked here https://www.mql5.com/en/forum/298112 for a solution but got nothing yet..
- 2019.01.06
- www.mql5.com
Hi Trinh,
The problem is that at the new build 1170, the function ChartSaveTemplate save the file at the templates directory and refuse to save it in other directories.
...That's not exact, use the correct syntax and fix your code.
That's not exact, use the correct syntax and fix your code.
Hi Alain,
So what is the correct syntax?
How can I save a template file in the Files directory by using the ChartSaveTemplate() function?
Or, How can I get a file from the templates directory, using the FileIsExist() function?
Because as I wrote, until the new build 1170 I did it with no problem, but now its failed.
BTW, I need all of these to detect if an EA attached to the Chart, so if you know about another elegant way to detect it I'll glad to hear about it.
Thanks,
How can I save a template file in the Files directory by using the ChartSaveTemplate() function?
ChartSaveTemplate(chartID,"\\Files\\Template\\tmp.tpl");
Pay attention whether the folder "Template" (in my example) really exists. Of course you can write a template direct into Files.
Or, How can I get a file from the templates directory, using the FileIsExist() function?
I'm afraid that it isn't possible in the build 1170 (without dll). If I'm wrong I'll appreciate some advice.
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use
hi guys
i have a question i try to do a little script for attach a template.
My template is located in C:\\Users\\pc\\AppData\\Roaming\\MetaQuotes\\Terminal\\B6FECCFE53E01D2BAC26AAD9B14029A8\\templates\\BollingerBands.tpl
i read in manual , if a template is not found in the first two variants, the search is performed in the folder terminal_directory\Profiles\Templates\.
therfore i can use this code
without path , i run but the condition return me False
if i set all path , the same error
what wrong???