Autor Tema: Detección de Archivos: Tipo ZIP  (Leído 1717 veces)

0 Usuarios y 1 Visitante están viendo este tema.

uDocProject

  • Visitante
Detección de Archivos: Tipo ZIP
« : junio 11, 2006, 05:34:23 pm »
Los archivos ZIP son bastante flexibles. Como algunos probablemente ya han notado, si se renombra un EXE autodescomprimible de WinZip a .ZIP, o si se manipula bajo Linux, este archivo es tratado como un archivo ZIP original.

Eso es porque el programa busca desde el inicio de un archivo hasta el final del mismo por el "signature" (firma) que caracteriza al "chunk" (o porción de datos) ZIP. Si la encuentra, no importa en qué parte del archivo esté, y si el directorio encontrado es válido, se considera que el archivo es ZIP. De lo contrario, sin no se encuentra el "signature", se considera que el archivo no es ZIP.


-----------------------------------


Código: [Seleccionar]
static char *ZIPsignature[]={0x50,0x4B,0x03,0x04};
#define ZIPsignatureLength 4

void isZIP(void *signatureOffsetPtr)
{
 cmp(ZIPsignature, &signatureOffsetPtr, ZIPsignatureLength) ? (return true) : (return false);
}