Discusión sobre el artículo "Trabajamos con archivos ZIP con los medios de MQL5, sin usar bibliotecas ajenas" - página 2
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
El reparto notorio de estructuras es jurar. Mantenga la versión corregida en el archivo adjunto.
¡Prompt! ¡Muchas gracias!
Ahora he mirado su error cuidadosamente - la misma situación con el casting de estructura, pero en otro contenedor - CDictionary. Reemplace Include\Dictionary.mqh con la variante adjunta a continuación.
Y sí, todo funciona bien en MT4 y voy a decir más CZip es un caballo de batalla en mis proyectos en MT4.
Lo que queda es esto:
'm_array' - structures containing objects are not allowed Dictionary.mqh 306 25
Lo que queda es esto:
'm_array' - structures containing objects are not allowed Dictionary.mqh 306 25
La línea 306 debe sustituirse por este fragmento:
En el Diccionario adjunto para MT4
La línea 306 debe sustituirse por este fragmento:
En el Diccionario adjunto para MT4.
Eso tiene sentido. Súper gracias.
PS. Es cierto que para los archivos de longitud cero en el archivo se crea un encabezado incorrecto (en el ejemplo ZipTask1), debido a lo cual son irrecuperables, pero esto se puede solucionar - tal vez es algo en la propia prueba.
Tiene sentido. Muchas gracias.
PS. Es cierto que para los ficheros de longitud cero en el archivo se crea una cabecera no válida (en el ejemplo de ZipTask1), lo que los hace irrecuperables, pero esto se puede solucionar - quizás sea algo en el propio test.
Veré qué puedo hacer con la longitud cero.
¿Qué ocurre? No puedo descomprimir el archivo zip.zip (descargado del ejemplo).
Registro.
18:25:47.809 Script zip_arc101 GBPUSD,H1: cargado con éxito
0 18:25:47.830 zip_arc101 GBPUSD,H1: inicializado
0 18:25:47.830 zip_arc101 GBPUSD,H1: Handle= 1 GetLastError= 0
0 18:25:47.830 zip_arc101 GBPUSD,H1: FileReadArray= 11004
0 18:25:47.830 zip_arc101 GBPUSD,H1: Zip.CreateFromCharArray= true
0 18:25:47.830 zip_arc101 GBPUSD,H1: Archivo cargado correctamente. Total de archivos: 7
0 18:25:47.836 zip_arc101 GBPUSD,H1: Zip.UnpackZipArchive= false
0 18:25:47.837 zip_arc101 GBPUSD,H1: Zip.UnpackZipArchive= false
0 18:25:47.837 zip_arc101 GBPUSD,H1: Zip.UnpackZipArchive= false
0 18:25:47.837 zip_arc101 GBPUSD,H1: uninit reason 0
0 18:25:47.839 Script zip_arc101 GBPUSD,H1: eliminado
El método CZip::UnpackZipArchive siempre devuelve false por alguna razón, aunque hace su trabajo. Se trata de un error. Compruebe el desempaquetado real mediante observaciones de campo.
El método CZip::UnpackZipArchive siempre devuelve false por alguna razón, aunque hace su trabajo. Esto es un error. Compruebe el desempaquetado real por observación.
Sí. ¡Falso pero el desempaquetado funciona!
Aquí hay otro problema, si tengo que descomprimir varios archivos en un bucle, cambiando sólo el año en el nombre.
Sólo se descomprime d2014.zip y ya está.
0 01:57:36.772 Script zip_arc104 GBPUSD,H1: cargado con éxito
0 01:57:36.807 zip_arc104 GBPUSD,H1: inicializado
0 01:57:36.807 zip_arc104 GBPUSD,H1: -------------- DD\d2014.zip
0 01:57:36.815 zip_arc104 GBPUSD,H1: DD\d2014.zip Zip.LoadZipFromFile= true
0 01:57:36.815 zip_arc104 GBPUSD,H1: Archivo cargado correctamente. Total de archivos: 1
0 01:57:36.906 zip_arc104 GBPUSD,H1: Zip.UnpackZipArchive= false
0 01:57:36.906 zip_arc104 GBPUSD,H1: -------------- DD\d2015.zip
0 01:57:36.912 zip_arc104 GBPUSD,H1: DD\d2015.zip Zip.LoadZipFromFile= true
0 01:57:36.912 zip_arc104 GBPUSD,H1: Archivo cargado correctamente. Total de archivos: 1
1 01:57:36.912 zip_arc104 GBPUSD,H1: acceso a puntero no válido en 'Zip.mqh' (407,28)
0 01:57:36.913 zip_arc104 GBPUSD,H1: uninit reason 0
0 01:57:36.915 Script zip_arc104 GBPUSD,H1: eliminado