AIM 7 utiliza el archivo .aba - necesidad de extraerlo
-
11-09-2019 - |
Pregunta
Debido a que AIM 7 beta 2, y ahora en AIM 7 beta 6 y GM - objetivo ha empezado a utilizar un nuevo formato de archivo .aba para mantener los archivos en los archivos utilizados para ubicarse en una carpeta que podíamos acceder en. archivos de programa, sin embargo, debido a "increasements rendimiento", AOL ha decidido ponerlas en este archivo .aba lugar. El archivo no se puede extraer con WinRAR o cualquier otro extractor universal, lo he intentado.
¿Hay una manera de extraerlo? Alguien me dijo que estaba bastante seguro de que el archivo .aba estaba usando zlib. Pero nadie puede confirmarlo. Alguien en otro sitio iba a tratar de usar AIM sí para extraer los archivos, y leerlos -. Pero nunca lo hizo
Esperamos que la gente inteligente aquí pueden encontrar la manera de extraerlos. En concreto, me gustaría tener el archivo bl.dtd situado en el mismo. Si abre el archivo en el bloc de notas, se puede ver que tiene sobre todo un galimatías, sino también enumera los archivos en ella - que incluye el archivo
.No hay necesidad de comprimir de nuevo en el archivo del aba, una vez que se extraen - pero si es posible -. No estaría de más que hacer
Puede descargar el archivo .aba aquí: http://www.filedropper.com/en- nosotros
Muchas gracias!
Solución
Este "extremadamente rápido y sucio (1)" código PHP extrae archivos JPG, PNG, GIF y archivos de texto gz comprimido de ese archivo mediante la búsqueda de algunas cadenas de magia ... se decodifica el texto y las imágenes muestran ...
(1) Quick-y-sucio es un término usado en referencia a todo lo que es un fácil forma de implementar una solución o "Chapuza". Su uso es muy popular entre los programadores, que lo utilizan para describir una solución en bruto o programación implementación que es imperfecto, poco elegante, o de otra manera inadecuada, pero que resuelve el problema o máscaras a la mano, y es generalmente más rápido y más fácil de poner en su lugar de un adecuado solución. (Wikipedia)
<?php
$PNG_SIG = "\x89PNG\x0D\x0A\x1A\x0A";
$PNG_EOF = "IEND\xAE\x42\x60\x82";
$GIF_SIG = "GIF89a";
$aba = file_get_contents('en-us.aba');
$pngs = explode($PNG_SIG, $aba);
foreach ($pngs as $i=>$png) {
if ($i>0) {
$extra = explode($PNG_EOF, $png);
$img = base64_encode($PNG_SIG.$extra[0].$PNG_EOF);
echo '<img src="data:image/png;base64,'."\n".$img.'" />';
echo "\n";
if ($extra[1]!='') {
if (substr($extra[1], 0, 6)==$GIF_SIG) {
$gifs = $extra[1];
$gifs = explode($GIF_SIG, $gifs);
foreach ($gifs as $j=>$gif) {
if ($j>0) {
$img = base64_encode($GIF_SIG.$gif);
echo '<img src="data:image/gif;base64,'."\n".$img.'" />';
echo "\n";
}
}
}
else {
$gz = @gzuncompress($extra[1]);
if ($gz!==false) {
echo "<pre>\n";
echo htmlspecialchars($gz);
echo "</pre>\n";
}
else {
$jpg = base64_encode($extra[1]);
echo '<img src="data:image/jpeg;base64,'."\n".$jpg.'" />';
echo "\n";
}
}
}
}
}
?>
Los resultados:
texto alternativo http://img132.imageshack.us/img132/280/83168934 .png
texto alternativo http://img62.imageshack.us/img62/6541/32497869 .png