installer - solucion - sfx maker desatendidos
Error al crear un paquete de instalaciĆ³n de 7-zip (2)
Si este no es el lugar correcto para preguntar esto, me disculpo.
Yo uso 7zip para crear un paquete de instalador. Recientemente, mi computadora se actualizó y ya no puedo hacer que funcione. Utilizo un Windows Installer de Visual Studio 2010 para crear el paquete de instalación, que agrego a un archivo llamado setup.7z. He confirmado que los archivos están archivados correctamente. Entonces llamo
copy /b 7zsd.sfx + config.txt + setup.7z setup.exe
que empaqueta todo en un único archivo llamado "
setup.exe
".
Al hacer clic en esto se iniciará el instalador.
Después de la actualización, todavía puedo hacer el archivo, y se ve bien.
Sin embargo, si intento hacer clic en él, recibo un mensaje que dice
7-Zip: Unsupported method.
Tengo instalada la versión 18.05 (x86) de 7-Zip.
Honestamente, no estoy seguro de dónde obtuve el archivo
7zsd.sfx
, pero recuerdo haber tenido que
7zsd.sfx
.
No tiene control de versiones, pero se modificó por última vez el 7/13/2007.
No sé si la versión es importante, ya que no necesita tener instalado 7-Zip ya que este es un archivo autoextraíble.
Sin embargo, puede ser que la versión anterior no pueda descomprimir algo comprimido en una versión más reciente.
Creo que el problema está en las diferentes versiones de 7zip y 7zip.sfx utilizadas. Desafortunadamente, el archivo SFX está ausente en los paquetes 7zip más recientes. Aquí está el link a 7zip_extra de una versión anterior que tiene tanto el archivo SFX como el archivo .bat para crear el instalador. Funciona bien para mi
Herramientas de configuración
: ¿Por qué 7-Zip?
Hay una gran cantidad de alternativas para crear configuraciones (reales), y varias son gratuitas:
Cómo crear el instalador de Windows
(varios enlaces a herramientas para crear todo tipo de configuraciones).
Alternatives
incluyen breves descripciones a continuación, en "
Alternatives
" (herramientas gratuitas o herramientas con funciones gratuitas).
Estas herramientas se han probado exhaustivamente para garantizar que se ejecuten con mínimas dependencias.
Solo algo para tener en cuenta y evaluar, supongo.
7-Zip
Adivina : primero instale los tiempos de ejecución de C / C ++ y vea si el problema desaparece. A continuación, compruebe la compresión, y luego el SDK de LZMA como se describe a continuación.
¿Compresión no soportada? : 7-Zip: método no compatible : ¿usar LZMA? Supongo que este problema todavía podría ocurrir aunque esa respuesta tenga un par de años.
Falta Runtime?
: Es posible que también desee realizar una comprobación de
dependencia
de ese
setup.exe
para ver si depende de algo que falta en el cuadro (por ejemplo,
MSVCRT.dll
- u otra biblioteca de tiempo de ejecución).
Solo descarga la herramienta.
Fácil de usar.
O tal vez primero intente
install commonly used C/C++ runtimes
.
Además, Dependency Walker está envejeciendo y muestra basura a veces.
Están las
Dependencies
más nuevas, pero aún no es hora de máxima audiencia, pero inténtelo (haga clic en la pestaña
Releases
).
Se ha actualizado para manejar
los conjuntos de API de Windows y WinSxS
(ensamblajes de lado a lado).
Nota
: varios programas de seguridad en
virustotal.com
detectan las dependencias como una "
herramienta de riesgo, no un virus
" (es de código abierto).
LZMA SDK
: El archivo
7zSD.sfx
probablemente sería del
LZMA SDK
.
Y la línea de comandos que describe se puede encontrar en el archivo de ayuda principal de 7-Zip (no en el SDK, sino en el que viene con la instalación normal de 7-zip).
Sección
"-sfx (Create SFX archive) switch"
:
Command Line Version => Switches => -sfc (Create SFX Archive
.
Alternativas
Visual Studio 2017
: la versión más reciente y gratuita de Visual Studio:
Visual Studio Community 2017
puede crear archivos
setup.exe
través de sus
proyectos de instalación de Microsoft Visual Studio 2017
(esta extensión debe instalarse después de instalar Visual Studio 2017).
WiX
: el
kit de herramientas de WiX de
código
abierto
puede crear archivos
setup.exe
con su componente Grabar.
Una muestra ad-hoc de WiX Burn
, solo para tener una idea general, tiene una curva de aprendizaje.
No hay GUI para ayudarte, todo está basado en XML.
Usar con o sin Visual Studio.
Instalador avanzado : Creo que el instalador avanzado puede compilar unsetup.exe
incluso en su versión gratuita. A pesar de una descarga bastante grande, creo que esto funcionaría para ti y sería rápido.
ACTUALIZACIÓN sobre el instalador avanzado : la edición gratuita solo puede compilar archivos MSI, las bootstrapers EXE se pueden compilar con las ediciones pagas (cualquiera de ellas).
dotNetInstaller : también está el BootNet Bootstrapper de instalación de dotNetInstaller , que nunca he usado. Aquí está en github.com (fuente).
Inno
oNSIS
: estos instaladores gratuitos que no son MSI pueden crear fácilmente unsetup.exe
para usted que ha sido optimizado para dependencias mínimas. No los he usado mucho, pero son conocidos. NSIS parece crear archivos comprimidos compatibles con herramientas Zip.
IExpress
et al: Existen
vulnerabilidades de seguridad
que afectan a estos paquetes autoextraíbles.
Otra razón por la que recomiendo una herramienta de implementación "real" con recursos dedicados para solucionar estos problemas rápidamente, a pesar de la amabilidad de tener un
setup.exe
que se puede abrir directamente en 7-zip.
Extracción de archivos
Sobre el tema de la
extracción de archivos
de archivos
setup.exe
de varios tipos:
-
MSI
:
Extraiga MSI de EXE
: se pueden extraer todos los archivos MSI y también se pueden extraer los archivos
setup.exe
creados con WiX - NSIS e Inno : Parece que NSIS crea archivos compatibles con 7-Zip (compresión comprensible), no así con Inno por su apariencia.
Algunos enlaces :
- https://en.wikipedia.org/wiki/Self-extracting_archive#Overview : " Para que una utilidad de descompresión expanda correctamente un archivo de la variedad autoextraíble o estándar, debe poder operar tanto en formato de archivo como Algoritmo utilizado. El código ejecutable exacto colocado al principio de un archivo autoextraíble, por lo tanto, debe variar según las opciones que se usaron para crear el archivo . Las rutinas de descompresión serán diferentes para un archivo LZMA 7z en comparación con un LZMA2 Archivo 7z, por ejemplo " .