Página 1 de 1

Ayuda con la configuración de instalación

Publicado: 19 de octubre de 2017 - 10:26 a. m.
por Arsgunner
Buen día,

Estoy intentando instalar el software SphinxIQ2. El desarrollador proporciona una utilidad que genera un archivo por lotes para una instalación silenciosa. Intenté copiar los parámetros de mi archivo setup.py; corresponden a la sección silentflags en la línea siguiente:

Código: Seleccionar todo

install_exe_if_needed("SetupSphinxIQ2.exe",silentflags='/s /v"/qn INSTALLDIR=\"C:\Program Files\SphinxIQ\"" /v"ISSCRIPTCMDLINE=\"MaCléDeLicence\""',key='SphinxIQ2',min_version='7.2.3.0')
Todavía soy principiante con WAPT; este debe ser mi tercer paquete y no tengo conocimientos específicos de Python. Imagino que está malinterpretando el comando, pero no veo cuál es el problema. Intenté quitar las comillas, que parecían innecesarias, pero sin éxito.

El mensaje de error es el siguiente:

Código: Seleccionar todo

Message	File Name	Line	Position	
Traceback				
    <module>	c:\wapt\wapt-get.py	23		
    main	c:\wapt\wapt-get.py	373		
    install_wapt	c:\wapt\common.py	3630		
"CalledProcessErrorOutput: Command '""SetupSphinxIQ2.exe"" /s /v""/qn INSTALLDIR=""C:\\Program Files\\SphinxIQ"""" /v""ISSCRIPTCMDLINE=""-MacléDeLicence""""' returned non-zero exit status 1203.
Output:u''"				
Gracias por su ayuda

Re: Ayuda con la configuración de instalación

Publicado: 19 de diciembre de 2017 - 19:48
por dcardon
Tenga cuidado con las barras invertidas (\) en las cadenas. Por defecto, es un carácter de escape en Python, como en muchos otros lenguajes. Debe escaparlo duplicándolo (\\) o colocando una 'r' antes de la cadena. La 'r' le indica a Python que interprete la cadena como una expresión regular, y entonces las barras invertidas ya no se interpretan.

Si logra que una cadena de instalación funcione en un comando cmd.exe, puede probarla en una función run() antes de intentar install_exe_if_needed(). En Python, es posible definir una cadena con comillas triples: """cadena""". Esto le permite tener tanto comillas simples como dobles dentro de ella.