Sobrescriba los archivos instalados con archivos en la subcarpeta de configuración en Inno Setup
Recientemente encontré algunos juegos de PC antiguos para jugar en mi computadora con Windows 10 de 64 bits. He buscado en varias fuentes en línea para que los juegos funcionen. Ahora estoy interesado en crear un instalador personalizado para todos los pasos que se tomaron para que los juegos funcionen correctamente. Conseguí que C&C Generals funcionara con un instalador personalizado a través de Inno Setup. Sin embargo, me falta la experiencia después de un poco de investigación y prueba para hacer lo siguiente:
- Puedo instalar el software y usar el parche oficial para actualizar el software instalado.
- No estoy seguro de cómo agregar un script para copiar archivos modificados de la subcarpeta de instalación para sobrescribir los archivos instalados en la carpeta principal después de la actualización. La actualización no funciona en los archivos modificados.
Ejemplo:
- El programa se instala en
C:\Program Files (x86)\Programv1.exe
. - Los archivos de origen de instalación incluyen una subcarpeta
\modfiles
. - Me gustaría sobrescribir
Programv1.exe
la actualización posterior al parche con\modfiles\Programv2.exe
¿Va esto debajo de la [Code]
sección? ¿Puede ir debajo de la [Run]
sección con una postinstall
bandera? ¿Como un simple comando de copiar y sobrescribir como último paso?
¡Gracias!
Respuestas
Hay muchas formas de lograrlo.
Puede ejecutar el parche usando el
AfterInstall
parámetro, incluso antes de que se instale el "mod". Consulte Inno Setup: Instale otro instalador y ejecútelo antes de continuar con la instalación . Luego puede instalar el mod directamente en la carpeta de instalación (no en la subcarpeta):[Files] ; Install original game Source: C:\source\TheGame\*; Dest: {app} ; Run patch Source: C:\patch\PatchTheGame.exe; Dest: {tmp}; AfterInstall: RunPatch ; Install mod Source: C:\mod\Program.exe; Dest: {app}
Use la
Run
entrada para copiar el mod después de instalar el parche:[Files] ; Install original game Source: C:\source\TheGame\*; Dest: {app} ; Extract the patch somewhere Source: C:\patch\PatchTheGame.exe; Dest: {tmp} ; Extract the mod somewhere Source: C:\mod\Program.exe; Dest: {tmp} [Run] Filename: {tmp}\PatchTheGame.exe Filename: {cmd}; Parameters: /C copy ""{tmp}\Program.exe"" ""{app}\Program.exe""
Puede codificarlo en Pascal Script. Consulte Instalar la versión personalizada del archivo de configuración en Inno Setup después de que finalice el subinstalador (Firebird)