¡En MQL5 siempre hay espacio para un exploit ! ;) - página 6

 
mql5:

Acabo de comprobarlo:

La biblioteca no está cargada, pero mientras no se llame a su función, todo funciona (salida TEST);

aha. gracias. lo comprobé, realmente encontré una llamada no supervisada. perdón por el ruido.

--

otra pregunta: ¿cómo puedo ejecutar dlls de 32 bits en x64?

// no hay problema con mis propias dlls, (aunque hay una con código perdido y la mía propia. da mucha pereza reproducirla). pero con las de terceros, es un problema. no siempre es posible encontrar una de 64 bits.

 
DC2008:

¿Qué no está claro? Vamos a dar una tarea concreta, pero todo alrededor...

Recuerdo :) la idea (espero que sea sensata) era crear una retroalimentación para construir indicadores iXXXonArray

Había planeado el siguiente esquema:

Tenemos, por ejemplo, un indicador iRSI. Como parámetro ENUM_APPLIED_PRICE , se especifica el mango de otro indicador.

2. por lo que este otro indicador tomará el buffer de datos (como un archivo de recursos) del EA (u otro código de llamada).

El Asesor Experto prepara los datos para el buffer y los actualiza en el recurso. Indicador lee este archivo - simplemente lo copia en su buffer (sin olvidar la sincronización de acceso, etc.).

4. El iRSI primario toma el buffer de este indicador y hace su cálculo.

5. ¡Ganancia!


Así, cualquier indicador (que ENUM_APPLIED_PRICE quiere) puede utilizar cualquier matriz de datos.

----

¿Quién puede formalizar este MQL-deed en una base de código?

El respeto está garantizado. :)

 
sergeev:

Recuerdo :) la idea (espero que sea sensata) era crear una retroalimentación para construir indicadores iXXXonArray

...

¿Quién es capaz de traducir esta hazaña de MQL en una base de código?

¡Respeto garantizado! :)

¿Tal vez se pueda convencer a los desarrolladores de forma más correcta?
 

Petición de Feat 8.

-----

Sé que no se puede pasar un puntero a un tipo simple (int*, char*, etc) a una función,

pero sugiero hacer una muleta elegante de cómo hacerlo.

Lo principal es que las funciones deben ser llamadas con el parámetro (o puntero) o NULL pasado a ellas.

 
o_O:

Petición de Feat 8.

-----

Sé que no se puede pasar un puntero a un tipo simple (int*, char*, etc) a una función,

pero sugiero hacer una muleta elegante de cómo hacerlo.

Lo principal es que las funciones deben ser llamadas con el parámetro (o puntero) o NULL pasado a ellas.

¿Un ejemplo de llamada que debería funcionar? ¿Y dónde está el TC?
 
o_O:

Petición de Feat 8.

-----

Sé que no se puede pasar un puntero a un tipo simple (int*, char*, etc) a una función,

pero sugiero hacer una muleta elegante de cómo hacerlo.

Lo principal es que las funciones deben ser llamadas con el parámetro (o puntero) o NULL pasado a ellas.

int x[1];
 
Yuriy Asaulenko:
int x[1];

no encaja.

para pasar como argumento void* a la función

 
o_O:

no es adecuado.

para pasar como argumento void* a una función

La tarea no está clara. Explícamelo primero.
 
o_O:

no es adecuado.

para pasar como argumento void* a una función

¿Está bien la implementación de memcpy? Pero no, todavía necesitamos un ejemplo. Una cosa es obtener un puntero y otra cosa es recuperar los datos.
 
Комбинатор:
¿Está bien la implementación de memcpy? Aunque no, todavía necesito un ejemplo. Obtener un puntero es una cosa, pero recuperar los datos es otra.

Supongamos que existe una función en una clase

SendParam(int type, void* param)

en el que se pasa el tipo de parámetro (type) y el propio parámetro, o más bien un puntero a él (void*).

El parámetro puede ser de cualquier tipo (clase o tipo simple).

Todo está bien con las clases, pero hay muletas con los tipos simples.