Running MQL4 Program Properties
Running MQL4 Program Properties
运行 MQL4 程序属性
要获取当前运行的 mql4 程序的信息,使用 ENUM_MQL_INFO_INTEGER 和 ENUM_MQL_INFO_STRING 中的常量。
对于函数 MQLInfoInteger
ENUM_MQL_INFO_INTEGER
| 标识符 | 描述 | 类型 |
|---|---|---|
| MQL_CODEPAGE | MQL4 程序用于输出和转换字符串的编码页(Print, PrintFormat, Alert, MessageBox, SendFTP, SendMail, SendNotification等) | 编码页常量 |
| MQL_PROGRAM_TYPE | MQL4 程序的类型 | ENUM_PROGRAM_TYPE |
| MQL_DLLS_ALLOWED | 给定运行程序使用 DLL 的权限 | bool |
| MQL_TRADE_ALLOWED | 给定运行程序的交易权限 | bool |
| MQLSIGNALS_ALLOWED | 给定运行程序修改信号的权限 | bool |
| MQL_DEBUG | 表示调试模式的标志 | bool |
| MQL_PROFILER | 表示程序在代码分析模式下的运行标志 | bool |
| MQL_TESTER | 表示测试器进程的标志 | bool |
| MQL_OPTIMIZATION | 表示优化过程的标志 | bool |
| MQL_VISUAL_MODE | 表示可视化测试器进程的标志 | bool |
| MQL_FRAME_MODE | 表示专家顾问在收集优化结果帧模式下运行的标志 | bool |
| MQL_LICENSE_TYPE | EX4 模块的许可证类型。许可证指的是使用 MQLInfoInteger(MQL_LICENSE_TYPE)发起请求的 EX4 模块。 | ENUM_LICENSE_TYPE |
对于函数 MQLInfoString
ENUM_MQL_INFO_STRING
| 标识符 | 描述 | 类型 |
|---|---|---|
| MQL_PROGRAM_NAME | 运行的 MQL4 程序的名称 | string |
| MQL_PROGRAM_PATH | 给定运行程序的路径 | string |
关于运行程序的类型信息,使用 ENUM_PROGRAM_TYPE 的值。
ENUM_PROGRAM_TYPE
| 标识符 | 描述 |
|---|---|
| PROGRAM_SCRIPT | 脚本 |
| PROGRAM_EXPERT | 专家顾问程序 |
| PROGRAM_INDICATOR | 指标程序 |
ENUM_LICENSE_TYPE
| 标识符 | 描述 |
|---|---|
| LICENSE_FREE | 免费无限版本 |
| LICENSE_DEMO | 市场付费产品的试用版。仅适用于策略测试器 |
| LICENSE_FULL | 购买的许可版本允许至少 5 次激活。激活次数由销售者指定。销售者可以增加允许的激活次数 |
| LICENSE_TIME | 有限期限许可证版本 |
示例:
ENUM_PROGRAM_TYPE mql_program=(ENUM_PROGRAM_TYPE)MQLInfoInteger(MQL_PROGRAM_TYPE);
switch(mql_program)
{
case PROGRAM_SCRIPT:
{
Print(__FILE__+" is script");
break;
}
case PROGRAM_EXPERT:
{
Print(__FILE__+" is Expert Advisor");
break;
}
case PROGRAM_INDICATOR:
{
Print(__FILE__+" is custom indicator");
break;
}
default:Print("MQL4 program type value is ",mql_program);
}最后更新于