Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Hola Alexander
gracias por poner a disposición estas bibliotecas. De alguna manera, he intentado instalarlas y hacer que funcionen algunos de tus ejemplos, pero me encuentro con el mismo problema una y otra vez. Cuando intento ejecutar uno de los scripts, obtengo el mensaje de error:
2011.03.11 09:06:22 1 Insertando un registro (GBPUSD,H1) No se puede abrir 'C:\Program Files\MetaTrader 5\MQL5\Libraries\AdoSuite.dll' (14001)
El AdoSuite.dll está en el directorio correcto, .NET 2.0 framework está instalado, he seguido todas sus instrucciones, pero sin embargo siempre me encuentro con este error, incluso con el script más simple donde sólo hago una inclusión de su biblioteca.
¿Alguna idea de dónde puede venir esto? (por cierto el problema no es porque ADOSuite.dll no esté en el directorio: si quito la dll del directorio entonces el error es otro: "No se puede abrir AdoSuite.dll'(126)")
Neil.
PD: incluso un script tan simple como el siguiente falla con el mismo error 14001. ¿Podría ser que tu DLL necesite 'ver' otras DLLs?
//+------------------------------------------------------------------+
//| TestADO.mq5 |
//| Copyright 2011, MetaQuotes Software Corp. |
//| http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2011, MetaQuotes Software Corp."
#property link "http://www.mql5.com"
#property version "1.00"
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
#include <Ado\Providers\OleDb.mqh>
void OnStart()
{
Comment("Test");
}
//+------------------------------------------------------------------+
Hola,
Es probable que esté tratando con un problema relacionado con el directorio de datos de su terminal. Hay 3 ubicaciones que MT5 utiliza:
Hola Alexander
he copiado todos los archivos correctamente, pero me sale el error:
'CAdoRecord::Values' - no se puede llamar a la función miembro protegida DbDataAdapter.mqh 108 23
cuando incluyo uno de estos incluye:
#include <Ado\Providers\OleDb.mqh>
#include <Ado\Providers\Odbc.mqh>
#include <Indicators\BsvSqlServer.mqh>
Si hago 'CAdoRecord::Values public, obtengo el error de inicialización al ejecutar mi script EA.
¿Me pueden ayudar?
Gracias
Ok, lo he solucionado. Copmilation mith 64bot y arranca sin errores.
¿Puede decirme cuál puede ser el problema?
Al compilar genera una advertencia:
differed by const qualifier, function CAdoRecord::Compare overrides CObject::Compare AdoRecord.mqh 61 54
y el error
'=' - cannot convert from const pointer to non-const pointer AdoRecord.mqh 80 19
¿Puede decirme cuál puede ser el problema?
Al compilar genera una advertencia:
differed by const qualifier, function CAdoRecord::Compare overrides CObject::Compare AdoRecord.mqh 61 54
y el error
'=' - cannot convert from const pointer to non-const pointer AdoRecord.mqh 80 19
en las líneas 62 y 82 del archivo AdoRecord.mqh, debe eliminar "const" de la declaración y la implementación del método CAdoRecord::Compare.
Los códigos se han actualizado.Por favor, ¿podría decirme cómo resolver el siguiente problema: AdoSuite.dll' no es la versión de 64 bits. Y no quiere trabajar....
¡Gracias de antemano!
Por favor, ¿podría decirme cómo resolver el siguiente problema: AdoSuite.dll' no es la versión de 64 bits. Y no quiere trabajar....
Gracias de antemano.
Recompile el proyecto para plataforma de 64 bits. Pero hay otros problemas, al lanzar cualquier ejemplo escribe: archivo EX5 inválido (8)
Por si a alguien le puede ser útil, pongo aquí el enlace:
Puente MT4-ODBC
https://github.com/onagano/mt4-odbc-bridge
Se trata de una librería para el popular terminal de trading, MetaTrader4 (MT4), para dar acceso a una base de datos relacional a través de la interfaz ODBC. Las principales características son las siguientes.
MT4 tiene su propio lenguaje de programación, MQL4, para la negociación algorítmica. Aunque es fácil de aprender, su expresividad es muy limitada. Las personas que desean ejecutar algoritmos más sofisticados tienden a recurrir fuera de MT4, normalmente utilizando DLLs. Pero la programación nativa de DLLs está restringida a la plataforma Windows, que no es familiar a los programadores de la corriente principal del reciente movimiento de código abierto.
MT4-ODBC Bridge (MOB en forma abreviada) proporciona un área de búfer en un RDBMS como MySQL, PostgreSQL, SQLite, etc. Tal base de datos es lo suficientemente general para la mayoría del movimiento de código abierto. Dicha base de datos es lo suficientemente general para la mayoría de los programadores de código abierto. Usted puede acceder a la base de datos por su lenguaje familiar, o tal vez directamente por SQL.
Este es un puente casero via DLL entre la terminal MT4 y el driver ODBC de cualquier base de datos. Y la base de datos puede incluso estar en memoria como H2, lo que te permite intercambiar datos entre el EA y el indicador, recoger ticks, otros datos, o controlar el EA o el indicador. Y todo lo demás.