错误、漏洞、问题 - 页 2953

 

代码的另一个问题。

switch(EnumTypeSound) 
{
   default: return;
   case tSoundError:   PlaySound("stops.wav");  break;
   case tSoundAlert:   PlaySound("alert.wav");  break;
   case tSoundAlert2:  PlaySound("alert2.wav"); break;
   case tSoundExpert:  PlaySound("expert.wav"); break;
   case tSoundNews:    PlaySound("news.wav");   break;
   case tSoundOk:      PlaySound("ok.wav");     break;
   case tSoundTick:    PlaySound("tick.wav");   break;
   case tSoundTimeout: PlaySound("timeout.wav"); break;
}

事实上,当试图访问

PlaySound("stops.wav");

出现以下错误。[Err: 5019] 文件不存在

代码本身位于项目 的深处,它由几十个mqh文件组成,这个函数不是直接从mq5中调用的(只是为了确定)。

帮助中说,"文件必须位于terminal_directory/Sounds或其子目录中。"然而,如果你打开数据目录(文件-打开数据文件夹),这个文件夹就不在那里。但它是在安装的文件夹"C:\Program Files\MetaTrader 5"中。也许,它在某种程度上影响了调用时的文件请求?

stops.wav 文件本身存在"C:\Program Files\MetaTrader 5\Sounds\" 文件夹中。

我想解决这个可笑的错误)))提前感谢!

[删除]  
Vadim Lin:

代码的另一个问题。

事实上,当试图访问

出现以下错误。[Err: 5019] 文件不存在

代码本身位于项目的深处,它由几十个mqh文件组成,这个函数不是直接从mq5中调用的(只是为了确定)。

帮助中说,"文件必须位于terminal_directory/Sounds或其子目录中。"然而,如果你打开数据目录(文件-打开数据文件夹),这个文件夹就不在那里。但它是在安装的文件夹"C:\Program Files\MetaTrader 5"中。也许,它在某种程度上影响了调用时的文件请求?

stops.wav 文件本身存在"C:\Program Files\MetaTrader 5\Sounds\" 文件夹中。

我想解决这个可笑的错误)))提前感谢!

这就是它的工作方式。

//+------------------------------------------------------------------+
//|                                                EnumTypeSound.mq5 |
//|                        Copyright 2020, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2020, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property script_show_inputs
//+------------------------------------------------------------------+
//| EnumTypeSound                                                    |
//+------------------------------------------------------------------+
enum EnumTypeSound
  {
   tSoundError,   // Stops
   tSoundAlert,   // Alert
   tSoundAlert2,  // Alert2
   tSoundExpert,  // Expert
   tSoundNews,    // News
   tSoundOk,      // Ok
   tSoundTick,    // Tick
   tSoundTimeout, // Timeout
  };
input EnumTypeSound TypeSound=tSoundError;
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   switch(TypeSound)
     {
      default:
         return;
      case tSoundError:
         PlaySound("stops.wav");
         break;
      case tSoundAlert:
         PlaySound("alert.wav");
         break;
      case tSoundAlert2:
         PlaySound("alert2.wav");
         break;
      case tSoundExpert:
         PlaySound("expert.wav");
         break;
      case tSoundNews:
         PlaySound("news.wav");
         break;
      case tSoundOk:
         PlaySound("ok.wav");
         break;
      case tSoundTick:
         PlaySound("tick.wav");
         break;
      case tSoundTimeout:
         PlaySound("timeout.wav");
         break;
     }
  }
//+------------------------------------------------------------------+
 

刚才我发现,在日志中,按键 快速跳到与按键对应的字符开始的那一行。


例如,如果你禁用了时间和来源栏,你可以在日志中快速地去找你的EA的特殊字符。

 
fxsaber:

刚才我发现,在日志中,按键 快速跳到与按键对应的字符开始的那一行。


例如,如果你禁用了时间和来源栏,你就可以在日志中快速地按照你的EA的特殊字符去做。

同样,也不知道!谢谢你!

 
SanAlex:

这就是它的作用。

是的,伙计(检查了一下,现在一切都在为我工作...但在某些地方,由于某种原因会出现错误(在某些终端),也许声音文件夹不在那里,将在一般情况下进行挖掘。谢谢你的答复我只是想,项目 结构子文件中可能有一些我不知道的、没有考虑到的限制......

 

这很奇怪,它是如何工作的。建立2755。

当我把数组的值乘以什么时,它们在调试器中的变化是正确的。


 
Aleksey Mavrin:

这很奇怪,它是如何工作的。建立2755。

但当我把数组的值本身乘以什么时,它们在调试器中的变化是正确的。


请更新到测试版2775,谢谢。

这一点已被修复。

 

大多数信使都会显示发送的信息是否被接收/阅读。

在PM中会有这样的功能吗?


ZZY Renate你在PM中写的问题的细节,就像什么都没有。

 
fxsaber:

大多数信使都会显示发送的信息是否被接收/阅读

在PM中会有这样的功能吗?


SZY Renate问题的细节,你写到PM上,好像什么都不是。

有必要,特别是在自由职业者的聊天中!

 
fxsaber:

大多数信使都会显示发送的信息是否被接收/阅读。

在PM中会有这样的功能吗?


SZY Renate,你在PM中写的问题的细节,就像什么都没有。


手机版 的终端有。
当然,它不能与电脑上的用户相比。但仍然...