Necesito instalar la versión anterior (N) del producto. Sin embargo, su creador abandonó la descarga completa a favor de un horrible instalador basado en el iniciador, y para la versión que me interesa, solo se lanzó el parche de la versión anterior (N-1).
Logré obtener e instalar con éxito la versión N-1, ya que solo era un conjunto de paquetes zip. Sin embargo, el parche para la versión N contiene parches diferenciales (extensiones .rdiff y .xdiff) para paquetes de datos (zips), y aunque traté de forzar a Launcher para que los instalara, falló y dañó los datos. (Nunca trabajé con esos parches)
Lo que sé sobre esos parches diferenciales:
Aunque no tengo una máquina Linux lista, puedo, si es necesario, trabajar con software para penguin. Puedo iniciar uno desde un pendrive (por ejemplo, mediante un cargador .iso de arranque), también tengo un pendrive lo suficientemente grande como para que quepan todos los datos, por lo que no se requiere capacidad NTFS.
(No tengo prisa, así que tómese su tiempo para dar una buena respuesta;) Tendré acceso a la máquina con esos archivos en ~ 6 horas y no es nada crítico de todos modos)
Editar #1:
Aunque ayer no pude acceder a los archivos en cuestión, hice un trabajo de google+brain.
Aparentemente, el software para hacer lo que necesito simplemente no existe, y el parche en sí está hecho de manera herética.
Los archivos parecen creados con la utilidad rdiff-backup que, a menos que sea ciego, carece de la opción de aplicar el parche inverso sin la configuración del repositorio.
Todavía no estoy seguro de si el parche se aplicará a los datos empaquetados o al directorio desempaquetado, pero se puede probar fácilmente cuando finalmente llegue a esos archivos.
Y ahora la parte herética, el parche de diferencia inversa está hecho para convertir una versión más nueva en una más antigua... ¿y esa compañía lo usó para aplicar un parche incremental? Puaj...
Parece que podría necesitar encontrar especificaciones de formato de archivo y simplemente crear mi propia utilidad para ello.
Aunque al final no apliqué parches diff manualmente (logré forzar al software a aplicar actualizaciones antiguas), perseguir este objetivo resultó en suficiente conocimiento para hacerlo (lo que me mostró cómo "arreglar" dicho actualizador de software) .
El primer paso es identificar el tipo de diferencia. Texto, binario, directorio, incremental, decremental (inverso)... y luego necesita averiguar su implementación exacta. ¡Uf, el dolor!
Hay varios consejos sobre qué tipo de parche de diferencia está tratando:
En mi tarea me he ocupado de las siguientes extensiones de archivo.
Comprobando los encabezados de los archivos (firmas), que normalmente constan de dos (palabra) o cuatro (dword/int) bytes. Aunque la búsqueda de firmas sin procesar resultó fallida, logré encontrar este útil software de identificación de archivos que tenía al menos uno de los formatos diff en su base de datos. (Agregaré las firmas que encontré en una edición posterior)
Los resultados fueron los siguientes:
(Sí, este software es tan increíble que usa cuatro tipos de parches junto con las actualizaciones normales...)
Para resumir, Windows es una plataforma muy mala para trabajar con parches diferenciales. En cualquier distribución de Linux, puede encontrar la mayoría del software necesario en los repositorios (DeltaMAX es solo para Windows, pero debería funcionar bien en Wine) e incluso si solo la fuente estará disponible, es mucho más fácil compilarla en cualquier Penguin que instalar todo lo necesario. en la máquina de Windows.
Nicolás Raúl
diff
operación a menudo tienen un efecto en elpatch
comando que debe usar.PTwr
Nick Dickinson Wilde
PTwr
Nicolás Raúl
PTwr