Erros, bugs, perguntas - página 2689

 
fxsaber:

Não é necessário. Ver Serviços.

Sim, não os fumei até agora. Obrigado pela ideia.

 
Dmitri Custurov:

Os pedidos e as tomadas da Web são compreensíveis, mas wss, por exemplo, eu compreendo que não funciona.

Este é um protocolo - tem de ser escrito em MQL no topo do API do soquete fornecido pelo terminal. Pode ser "arrancado" de implementações públicas em outras línguas.

 
Quando a EA envia uma encomenda, há alguma forma de apanhar este evento de outra EA e obter os dados da encomenda? Sem resposta do servidor.
 
Dmitri Custurov:
Quando a EA envia uma encomenda, há alguma forma de apanhar este evento de outra EA e obter os dados da encomenda? Sem resposta do servidor.

Da revista.

 
Andrey Khatimlianskii:

Da revista.

Sim, é uma muleta. Mas poderia funcionar. (risos): Obrigado.

 

Não é bom, recebo um erro:

void OnStart()
  {
   int my_num=4444;
   uchar uchar_array[];
   StructToCharArray(my_num,uchar_array,0);
  }
code generation error           1       1

Fazer uma "muleta" para uma situação simples é necessário :( .

 
Aliaksandr Hryshyn:

Não é bom, recebo um erro:

É preciso fazer uma "muleta" para uma situação simples :( .

Não há maneira nenhuma de int poder ser uma estrutura. Corrigir erro.

 
Nikolai Semko:

Não há maneira nenhuma de int poder ser uma estrutura. Corrigir erro.

Bem, sim. Seria lógico apenas tornar possível, por exemplo, acrescentar uma função semelhante para tipos simples.

 
Aliaksandr Hryshyn:

Bem, sim. Seria lógico apenas tornar possível, por exemplo, acrescentar uma função semelhante para tipos simples.

O TypeToBytes faz isto uniformemente.

 
Aliaksandr Hryshyn:

Bem, sim. Seria lógico apenas tornar possível, por exemplo, acrescentar uma função semelhante para tipos simples.

Não vejo a lógica nisso.
para tipos simples, em primeiro lugar, pode fazê-lo desta forma:

void OnStart()
  {
   struct Int {
   int i;};
   Int my_num={4444};
   uchar uchar_array[];
   StructToCharArray(my_num,uchar_array,0);
   for (int i=0;i<ArraySize(uchar_array);i++) printf("char[%d] = %d",i,uchar_array[i]);
  }

em segundo lugar, sim:

void OnStart()
  {
   union _int {
   int i;
   uchar c[sizeof(int)]; };
   _int _i;
   _i.i=4444;
   for (int i=0;i<sizeof(_int);i++) printf("char[%d] = %d",i,_i.c[i]);
  }

e nem tudo são muletas

resultar em ambos os casos:

2020.03.31 12:58:11.353 Test_StructToCharArray (EURUSD,M10)     char[0] = 92 
2020.03.31 12:58:11.353 Test_StructToCharArray (EURUSD,M10)     char[1] = 17 
2020.03.31 12:58:11.353 Test_StructToCharArray (EURUSD,M10)     char[2] = 0
2020.03.31 12:58:11.353 Test_StructToCharArray (EURUSD,M10)     char[3] = 0
17*256+92=4444