Hola,
tengo un programa que se instala correctamente e introduce la clave de desinstalación silenciosa, pero el código de retorno no es 0.
¿Cuáles son las mejores prácticas para este tipo de problema?
Gracias de antemano,
Thierry Rapp.
[RESUELTO] Manejo del código de retorno para la desinstalación
Reglas del foro
Reglas del foro de la comunidad
* Soporte en inglés en www.reddit.com/r/wapt
* El soporte de la comunidad en francés está disponible en este foro
* Por favor, anteponga [RESUELTO] al título del tema si está resuelto.
* Por favor, no edite un tema que esté etiquetado como [RESUELTO]. Abra un nuevo tema haciendo referencia al anterior.
* Especifique la versión de WAPT instalada, la versión completa y el número de compilación (2.2.1.11957 / 2.2.2.12337 / etc.), así como la edición Enterprise/Discovery.
* Las versiones 1.8.2 y anteriores ya no son compatibles. Las únicas preguntas aceptadas sobre la versión 1.8.2 están relacionadas con la actualización a una versión compatible (2.1, 2.2, etc.).
* Especifique el sistema operativo del servidor (Linux/Windows) y la versión (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Especifique el sistema operativo de la máquina de administración/creación de paquetes y de la máquina con el agente problemático, si corresponde (Windows 7/10/11/Debian 11/etc.).
* Evite hacer varias preguntas al abrir un tema, ya que podría ser ignorado. Si hay varios temas, ábralos por separado, preferiblemente uno tras otro y no todos a la vez (es decir, no sature el foro con spam).
* Incluya fragmentos de código, capturas de pantalla y otras imágenes directamente en la publicación. Los enlaces a Pastebin, Bitly y otros sitios de terceros serán eliminados sistemáticamente.
* Como en cualquier foro comunitario, el soporte es proporcionado voluntariamente por los miembros. Si necesita soporte comercial, puede comunicarse con el departamento de ventas de Tranquil IT al 02.40.97.57.55.
Reglas del foro de la comunidad
* Soporte en inglés en www.reddit.com/r/wapt
* El soporte de la comunidad en francés está disponible en este foro
* Por favor, anteponga [RESUELTO] al título del tema si está resuelto.
* Por favor, no edite un tema que esté etiquetado como [RESUELTO]. Abra un nuevo tema haciendo referencia al anterior.
* Especifique la versión de WAPT instalada, la versión completa y el número de compilación (2.2.1.11957 / 2.2.2.12337 / etc.), así como la edición Enterprise/Discovery.
* Las versiones 1.8.2 y anteriores ya no son compatibles. Las únicas preguntas aceptadas sobre la versión 1.8.2 están relacionadas con la actualización a una versión compatible (2.1, 2.2, etc.).
* Especifique el sistema operativo del servidor (Linux/Windows) y la versión (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Especifique el sistema operativo de la máquina de administración/creación de paquetes y de la máquina con el agente problemático, si corresponde (Windows 7/10/11/Debian 11/etc.).
* Evite hacer varias preguntas al abrir un tema, ya que podría ser ignorado. Si hay varios temas, ábralos por separado, preferiblemente uno tras otro y no todos a la vez (es decir, no sature el foro con spam).
* Incluya fragmentos de código, capturas de pantalla y otras imágenes directamente en la publicación. Los enlaces a Pastebin, Bitly y otros sitios de terceros serán eliminados sistemáticamente.
* Como en cualquier foro comunitario, el soporte es proporcionado voluntariamente por los miembros. Si necesita soporte comercial, puede comunicarse con el departamento de ventas de Tranquil IT al 02.40.97.57.55.
- Sfonteneau
- Experto en WAPT
- Mensajes: 2312
- Registrado: 10 de julio de 2014 - 23:52
- Contacto :
Buen día
En este caso, te recomiendo borrar uninstallkey después de la instalación:
ENTONCES :
De esta manera wapt olvidará la clave
luego crea una función de desinstalación:
En este caso, te recomiendo borrar uninstallkey después de la instalación:
ENTONCES :
Código: Seleccionar todo
uninstallkey = []luego crea una función de desinstalación:
Código: Seleccionar todo
def uninstall():
run('uninstall.exe',accept_returncodes=2)
-
Thierry Rapp
- Mensajes: 8
- Inscripción: 04/04/2023 - 08:03
Lo probé:
El método de desinstalación ejecutado directamente funciona
El método eliminarme devuelve otro error
El método de desinstalación ejecutado directamente funciona
El método eliminarme devuelve otro error
Código: Seleccionar todo
# -*- coding: utf-8 -*-
from setuphelpers import *
app_uninstall_key = '{7261A53C-9352-45D1-8DE0-B326E177CA84}'
def install():
# Declaring local variables
fichier_lic=makepath('c:','ProgramData','itech','CESAR-LCPC','6.3','CDs')
fichier_nethasp=makepath('c:','CESAR-LCPCv2022.0','bin')
rep_syswow=makepath('c:','Windows','SysWOW64')
# Installing the software
print("Installing: CESAR-LCPCv2022.0.2.exe")
install_exe_if_needed('CESAR-LCPCv2022.0.2.exe',
silentflags='/b0 /q2',
key=app_uninstall_key,
min_version='2022.0',
timeout=600,
accept_returncodes=[0,12]
)
if not isdir(fichier_lic):
mkdirs(fichier_lic)
filecopyto('CESAR-LCPC_V6.3.ilicx',fichier_lic)
filecopyto('nethasp.ini',fichier_nethasp)
filecopyto('nethasp.ini',rep_syswow)
uninstallkey =[]
def uninstall():
uninstCMD = uninstall_cmd(app_uninstall_key)
print(uninstCMD)
run(uninstCMD,accept_returncodes=[0,12])
wait_uninstallkey_present()
- Sfonteneau
- Experto en WAPT
- Mensajes: 2312
- Registrado: 10 de julio de 2014 - 23:52
- Contacto :
¿Puedes proporcionar el mensaje de error?
Tengo una duda sobre algo...
¿Puedes declarar uninstallkey justo antes de setup.py?
No creo que sea eso, pero... si la clave de desinstalación está vacía, wapt ya no tiene una clave para probar. Si sigue dando errores, significa que la clave sigue ahí
Tengo una duda sobre algo...
¿Puedes declarar uninstallkey justo antes de setup.py?
Código: Seleccionar todo
# -*- coding: utf-8 -*-
from setuphelpers import *
uninstallkey =[]
app_uninstall_key = '{7261A53C-9352-45D1-8DE0-B326E177CA84}'
def install():
# Declaring local variables
fichier_lic=makepath('c:','ProgramData','itech','CESAR-LCPC','6.3','CDs')
fichier_nethasp=makepath('c:','CESAR-LCPCv2022.0','bin')
rep_syswow=makepath('c:','Windows','SysWOW64')
# Installing the software
print("Installing: CESAR-LCPCv2022.0.2.exe")
install_exe_if_needed('CESAR-LCPCv2022.0.2.exe',
silentflags='/b0 /q2',
key=app_uninstall_key,
min_version='2022.0',
timeout=600,
accept_returncodes=[0,12]
)
if not isdir(fichier_lic):
mkdirs(fichier_lic)
filecopyto('CESAR-LCPC_V6.3.ilicx',fichier_lic)
filecopyto('nethasp.ini',fichier_nethasp)
filecopyto('nethasp.ini',rep_syswow)
uninstallkey =[]
def uninstall():
uninstCMD = uninstall_cmd(app_uninstall_key)
print(uninstCMD)
run(uninstCMD,accept_returncodes=[0,12])
wait_uninstallkey_present()
- Sfonteneau
- Experto en WAPT
- Mensajes: 2312
- Registrado: 10 de julio de 2014 - 23:52
- Contacto :
Ah, sí, ten cuidado al hacer las pruebas; es fundamental reinstalar el programa antes de probar un comando de eliminación; de lo contrario, no funcionará porque el código no está en la base de datos. Esa podría ser la razón
-
Thierry Rapp
- Mensajes: 8
- Inscripción: 04/04/2023 - 08:03
Código: Seleccionar todo
Removing C:\waptdev\insastg-cesar_2022.0.2-2_windows_PROD ...
2023-06-09 07:39:07,072 CRITICAL Critical error during uninstall: CalledProcessErrorOutput: Command 'C:\\PROGRA~3\\UNINST~1\\{7261A~1\\Setup.exe /remove /q' returned non-zero exit status 12.
Output:
No package removed !
FATAL ERROR : TypeError: not all arguments converted during string formatting-
Thierry Rapp
- Mensajes: 8
- Inscripción: 04/04/2023 - 08:03
Estoy reiniciando la instalación.
El programa se desinstaló correctamente; simplemente está generando una excepción.
El programa se desinstaló correctamente; simplemente está generando una excepción.
-
Thierry Rapp
- Mensajes: 8
- Inscripción: 04/04/2023 - 08:03
Código: Seleccionar todo
Une exception s'est produite : SystemExit (note: full exception trace is shown but execution is paused at: _run_module_as_main)
3
File "C:\Program Files (x86)\wapt\wapt-get.py", line 817, in main
print("=== Error removing packages ===\n%s" % "\n".join([" %s" % p for p in errors]))
File "C:\Program Files (x86)\wapt\wapt-get.py", line 817, in <listcomp>
print("=== Error removing packages ===\n%s" % "\n".join([" %s" % p for p in errors]))
TypeError: not all arguments converted during string formatting
During handling of the above exception, another exception occurred:
File "C:\Program Files (x86)\wapt\wapt-get.py", line 1651, in main
sys.exit(3)
File "C:\Program Files (x86)\wapt\wapt-get.py", line 1677, in <module>
main()
File "C:\Program Files (x86)\wapt\Lib\site-packages\runpy.py", line 87, in _run_code
File "C:\Program Files (x86)\wapt\Lib\site-packages\runpy.py", line 194, in _run_module_as_main (Current frame)
SystemExit: 3- dcardón
- Experto en WAPT
- Mensajes: 1908
- Inscripción: 18 de junio de 2014 - 09:58
- Ubicación: Saint Sébastien sur Loire
- Contacto :
Gracias por tus comentarios Thierry, hemos corregido el mensaje de excepción, se incluirá en la próxima versión 2.4.Thierry Rapp escribió: ↑9 de junio de 2023 - 08:43Código: Seleccionar todo
Une exception s'est produite : SystemExit (note: full exception trace is shown but execution is paused at: _run_module_as_main) 3 File "C:\Program Files (x86)\wapt\wapt-get.py", line 817, in main print("=== Error removing packages ===\n%s" % "\n".join([" %s" % p for p in errors])) File "C:\Program Files (x86)\wapt\wapt-get.py", line 817, in <listcomp> print("=== Error removing packages ===\n%s" % "\n".join([" %s" % p for p in errors])) TypeError: not all arguments converted during string formatting During handling of the above exception, another exception occurred: File "C:\Program Files (x86)\wapt\wapt-get.py", line 1651, in main sys.exit(3) File "C:\Program Files (x86)\wapt\wapt-get.py", line 1677, in <module> main() File "C:\Program Files (x86)\wapt\Lib\site-packages\runpy.py", line 87, in _run_code File "C:\Program Files (x86)\wapt\Lib\site-packages\runpy.py", line 194, in _run_module_as_main (Current frame) SystemExit: 3
Estoy marcando el tema como [RESUELTO].
Atentamente,
Denis
Denis Cardon - Tranquil IT
¡Comparte tus experiencias en WAPT! Envíanos las URL de tus blogs y artículos en la "Tu opinión del foro y los publicaremos en el de WAPT
¡Comparte tus experiencias en WAPT! Envíanos las URL de tus blogs y artículos en la "Tu opinión del foro y los publicaremos en el de WAPT
