首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法设置MQL_DLLS_ALLOWED

无法设置MQL_DLLS_ALLOWED
EN

Stack Overflow用户
提问于 2019-10-18 00:32:21
回答 1查看 57关注 0票数 0

我想知道是否有任何方法可以使用外部程序或dll或任何东西来设置ENUM_MQL_INFO_INTEGER的属性id值。我试过这个:

代码语言:javascript
复制
int OnInit()
  {
//---
   MQL_DLLS_ALLOWED = 1;
   Print(MQLInfoInteger(MQL_DLLS_ALLOWED));
//---
   return(INIT_SUCCEEDED);
  }

它给出错误:

代码语言:javascript
复制
'MQL_DLLS_ALLOWED' - l-value required   TestingEnum.mq5 15  4
'1' - cannot convert enum   TestingEnum.mq5 15  22
'=' - l-value required  TestingEnum.mq5 15  21

请告诉我我能做些什么。

EN

回答 1

Stack Overflow用户

发布于 2019-10-20 22:35:24

我不能直接帮助你回答你的问题,主要是因为评论中讨论的原因。我相信你可以检查是否允许DLL的值,但你不能轻易地启用/禁用它。也许有一种方法可以从命令行运行MT终端,使用一些键允许或阻止dll,所以你可以检查一下。但这意味着重新启动你的平台,我不确定这是否方便。

如果我是您,并且厌倦了多次启用/禁用dll,我会引入一个客户端的全局变量,其值为0或1(当然是两倍)。然后,如果它是零,则不调用dll,并且ea不启动(如果您在OnInit()中检查),如果它是非零值,则dll工作。一个简单的脚本改变这个GV可以写和分配热键。在这种情况下,热键会阻止一切,并在需要时再次允许dll。如果你需要任何帮助-我将编辑我的代码并提供一些基本的例子。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58437141

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档