Mi enfoque. El núcleo es el motor. - página 93

 

En resumen, no era posible leer el contenido del recurso en el gráfico normal.

Tal vez hice algo mal...

En primer lugar, creamos un EA para el probador. En él, crea un objeto y lo vincula al archivo:

int OnInit()
  {
   //----------------------------------------------
   if(!ObjectCreate(0,"Resource",OBJ_BITMAP_LABEL,0,0,0))Print("Object is not created!");
   else Print("Object created!");
   //-------------------------------
   if(!ObjectSetString(0,"Resource",OBJPROP_BMPFILE,"::Resource"))Print("BMPFILE is not created!");
   else Print("BMPFILE created!");
   //----------------------------------------------
   return(INIT_SUCCEEDED);
  }

Entonces escribimos el siguiente código en la función OnTick():

void OnTick()
  {
   uchar Arr[];
   uint  Data[];
   //---------------------------
   string price = (string)Bid;
   //---------------------------
   int width = StringToCharArray(price,Arr);
   //---------------------------
   ArrayResize(Data,width);
   //---------------------------
   ArrayCopy(Arr,Data);
   //---------------------------
   if(!ResourceCreate("::Resource",Data,width,1,0,0,0,COLOR_FORMAT_XRGB_NOALPHA))Print("Resource is not created!");
   //---------------------------
  }


A continuación, cree un indicador con la función de temporizador y escriba en él:

void OnTimer()
  {
//---
   uint Data[],width,height;
   //-----------------------------
   if(!ResourceReadImage("::Resource",Data,width,height))Print("Failed to read resource!");
   else Print("Resource is readable!");
   //-----------------------------
   
  }

Ejecute el Asesor Experto en el Probador de Estrategias, y luego el indicador en el gráfico normal.

И... no lee nada. Dice que no pudo leer el recurso.

 

Entonces, ¿qué pasa?

el error -

ERR_RESOURCE_NOT_FOUND

 
fxsaber:

Salí de la discusión.

No me ofendo. Nada personal. Es que el artículo no me ayuda a entender nada, la solución es demasiado complicada.

Por favor, dígame por qué la lectura del recurso creado por el Asesor Experto en el Probador de Estrategias por el indicador en un gráfico común no está funcionando?

¿He cometido un error en el código, o simplemente no funciona?

 

En resumen, la cuestión sigue abierta. Quién sabe lo que es - ahora sería un buen momento para criticar mi decisión).

Aceptaré cualquier crítica. Sólo tiene que entender si mi error, o no trabajar la visibilidad del recurso creado en el probador.

Entonces quedará claro si el recurso puede ser una solución universal para transferir información entre programas.

Creo que esta información será útil para todos.

 

No está claro de nuevo.

Instalado el indicador y el EA en el mismo gráfico. El indicador sigue sin ver el recurso.

Coloca la lectura del recurso en el propio Asesor Experto, justo después de que se llene. El recurso es visible.

Resulta que el recurso sólo es visible para el programa en el que está definido.

O bien, no es visible sólo desde el indicador.

Ahora voy a comprobar si el recurso es visible para el Asesor Experto en el otro gráfico.

 
Реter Konow:

...

Ahora voy a comprobar si el EA ve el recurso en el otro gráfico.

No, tampoco ve el recurso.

¿Y dónde han desaparecido todos los gurús? ....

Es obvio que estoy cometiendo un error. Pero en lo que...

¿O tal vez no funciona en absoluto?


ZS. Por cierto, ¿por qué fxsaber utiliza una cadena de descripción del gráfico para enviar un mensaje a otro programa si los recursos funcionan como una herramienta de comunicación perfecta?

 
Intentaré guardar el recurso en un archivo después de haberlo creado.
 
Реter Konow:
Intentaré mantener el recurso en el archivo, una vez creado.

Hermoso monólogo)

 
Vitaly Muzichenko:

Hermoso monólogo)

¿Sabes de qué se trata?

 
He estado pensando. Hay una manera de utilizar los recursos de otros programas. La solución probablemente esté ahí. Buscaré en la documentación.