Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

461
Vistas
Modifique el archivo de configuración en el instalador de Inno Setup compilado (archivo de configuración personalizado para cada ejecutable descargado)

Estoy trabajando en un proyecto que necesita un método de operación único que requiere que un instalador de Windows exe (empaquetado con Inno Setup) se actualice con un archivo de configuración diferente que contiene un número de identificación único para cada descarga.

El proyecto en sí es una web para la cual estoy usando PHP en Apache y en Linux.

El instalador contiene un archivo ejecutable binario de Windows y un archivo config.ini . Solo necesito editar el archivo config.ini cada vez que el archivo esté listo para descargar. Las actualizaciones son simplemente un contador incrementado.

No encuentro una dirección para abordar, ya que estoy buscando editar un archivo empaquetado de Inno Setup creado en Windows para editarlo en un servidor Linux.

¿Puede alguien señalarme algunas ideas para lograr esto, por favor?

Gracias,
Sk

about 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Simplemente almacene el archivo de configuración en el instalador sin comprimir para permitir una fácil modificación. Utilice la bandera nocompression . También debe usar el indicador dontverifychecksum , de lo contrario, el instalador considerará que el archivo modificado está dañado durante la instalación.

 [Files] Source: "config.ini"; DestDir: "{app}"; Flags: nocompression dontverifychecksum

Tampoco puede modificar la longitud del archivo. Por lo tanto, debe reservar suficiente espacio en el archivo para números más grandes, como:

 [Section] Counter=?????

Para modificar el instalador con PHP, ahora puede hacer:

 $counter = $_GET["counter"]; $filename = "mysetup.exe"; $contents = file_get_contents($filename); $mask = "?????"; $prefix = "Counter="; $replace = $prefix . $mask; $p = strpos($contents, $replace); if ($p !== false) { $s = $prefix . str_pad($counter, strlen($mask), "0", STR_PAD_LEFT); $contents = substr($contents, 0, $p) . $s . substr($contents, $p + strlen($replace)); file_put_contents($filename, $contents); // or feed directly to the output stream }

Si firma el instalador (hoy en día es básicamente necesario para los instaladores descargables), debe firmarlo después de modificarlo.

O consulte Incrustar datos específicos del usuario en un instalador firmado con código de autenticación al descargar .


Otra forma es incluir los datos personalizados en el nombre del instalador.

about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda