Página 1 de 1

[RESUELTO] La eliminación de Winrar no funciona

Publicado: 3 de junio de 2024 - 12:06 p. m.
por sebastien4444
Buen día,

Para probar la creación de paquetes, quería hacer una prueba con un software que parece bastante sencillo en cuanto a instalación: WinRar.
Siguiendo el procedimiento de creación de paquetes en el video de YouTube "Creación, configuración e implementación de un paquete exe con WAPT", pasé a "Generar una plantilla de paquete" en la consola WAPT.

Al editar el archivo setup.py, recuperé la clave de desinstalación a través de un símbolo del sistema:

Código: Seleccionar todo

C:\Users\seb>wapt-get list-registry winrar
Using config file: E:\wapt\wapt-get.ini
UninstallKey                           Software                                                              Version             Uninstallstring
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
WinRAR archiver                        WinRAR 7.01 (64-bit)                                                  7.01.0              C:\Program Files\WinRAR\uninstall.exe
Luego ingresé esta información en la función install(), lo que dio como resultado el siguiente archivo setup.py:

Código: Seleccionar todo

# -*- coding: utf-8 -*-
from setuphelpers import *

r"""
Usable WAPT package functions: install(), uninstall(), session_setup(), audit(), update_package()

"""
# Declaring global variables - Warnings: 1) WAPT context is only available in package functions; 2) Global variables are not persistent between calls


def install():
    # Declaring local variables

    # Installing the software
    print("Installing: winrar-x64-701fr.exe")
    install_exe_if_needed('winrar-x64-701fr.exe',
        silentflags='/S',
        key='WinRAR archiver',
        min_version='7.1.0'
    )
    create_desktop_shortcut(r'WinRaR',target=r'C:\Program Files\WinRAR\WinRAR.exe')
Cuando ejecuto WAPT:install en el proyecto PyScripter, Winrar se instala correctamente en mi máquina host PERO no se agrega ningún acceso directo al escritorio de mi usuario actual.

Cuando ejecuto WAPT:remove, no desinstala WinRAR de mi host y no entiendo por qué :rollo:
A continuación se muestran las salidas de la consola después de ejecutar la instalación y luego la eliminación:

Código: Seleccionar todo

*** Remote Interpreter Reinitialized ***
Command Line : install "C:\waptdev\pilote-winrar_7.1.0_Windows_PROD-wapt\WAPT\.."
Using config file: E:\wapt\wapt-get.ini
Installing WAPT files C:\waptdev\pilote-winrar_7.1.0_Windows_PROD-wapt
Installing: winrar-x64-701fr.exe
Installing: winrar-x64-701fr.exe (7.1.0)

Results :

 === install packages ===
  C:\waptdev\pilote-winrar_7.1.0_Windows_PROD-wapt | pilote-winrar (7.1.0-0)
>>> 
*** Remote Interpreter Reinitialized ***
Command Line : remove "C:\waptdev\pilote-winrar_7.1.0_Windows_PROD-wapt\WAPT\.."
Using config file: E:\wapt\wapt-get.ini
Removing C:\waptdev\pilote-winrar_7.1.0_Windows_PROD-wapt\WAPT\.. ...
=== Removed packages ===
  pilote-winrar

Re: Eliminar Winrar no funciona

Publicado: 3 de junio de 2024 - 12:37
por sfonteneau
sebastien4444 escribió: 3 de junio de 2024 - 12:06 Cuando ejecuto una ejecución de WAPT:install en el proyecto PyScripter, Winrar se instala correctamente en mi máquina host, PERO no se agrega ningún acceso directo al escritorio de mi usuario actual.
¿No está seguro de si WinRAR crea un acceso directo?
sebastien4444 escribió: 3 de junio de 2024 - 12:06
Cuando ejecuto WAPT:remove, no desinstala WinRAR de mi host y no entiendo por qué :rollo:
A continuación se muestran las salidas de la consola después de ejecutar la instalación y luego la eliminación:

Código: Seleccionar todo

*** Remote Interpreter Reinitialized ***
Command Line : install "C:\waptdev\pilote-winrar_7.1.0_Windows_PROD-wapt\WAPT\.."
Using config file: E:\wapt\wapt-get.ini
Installing WAPT files C:\waptdev\pilote-winrar_7.1.0_Windows_PROD-wapt
Installing: winrar-x64-701fr.exe
Installing: winrar-x64-701fr.exe (7.1.0)

Results :

 === install packages ===
  C:\waptdev\pilote-winrar_7.1.0_Windows_PROD-wapt | pilote-winrar (7.1.0-0)
>>> 
*** Remote Interpreter Reinitialized ***
Command Line : remove "C:\waptdev\pilote-winrar_7.1.0_Windows_PROD-wapt\WAPT\.."
Using config file: E:\wapt\wapt-get.ini
Removing C:\waptdev\pilote-winrar_7.1.0_Windows_PROD-wapt\WAPT\.. ...
=== Removed packages ===
  pilote-winrar
Según el resultado, supongo que la instalación no se reinició después de agregar la clave

Nota: Es obligatorio reiniciar la instalación después de agregar la clave.

Re: Eliminar Winrar no funciona

Publicado: 3 de junio de 2024 - 13:38
por sebastien4444
sfonteneau escribió: 3 de junio de 2024 - 12:37 ¿No estoy seguro de si WinRAR crea un acceso directo?
Pero ¿no debería agregar esta línea a la función install() forzar la adición de un acceso directo?

Código: Seleccionar todo

create_desktop_shortcut(r'WinRaR',target=r'C:\Program Files\WinRAR\WinRAR.exe')
sfonteneau escribió: 3 de junio de 2024 - 12:37 Según la salida, supongo que la instalación no se reinició después de agregar la clave.

Nota: reiniciar una instalación después de agregar la clave es obligatorio.
Seguí correctamente los pasos del tutorial de YouTube y, por lo tanto, reinicié la instalación después de agregar la clave.

Incluso terminé desinstalando manualmente WinRAR y reinstalándolo usando Ejecutar instalar, pero sigue siendo lo mismo; ejecutar Ejecutar quitar no desinstala el software :?

Re: Eliminar Winrar no funciona

Publicado: 3 de junio de 2024 - 13:42
por sfonteneau
Sí, efectivamente, `create_desktop_shortcut` debería crear el acceso directo; no me había dado cuenta.


Y la desinstalación debería funcionar si reinicias la instalación correctamente; no veo ningún error.

¿Te aparece un mensaje como "El archivo ejecutable %s ya está instalado. Se omite" al reiniciar la instalación?

Re: Eliminar Winrar no funciona

Publicado: 3 de junio de 2024 - 13:56
por sfonteneau
Acabo de reiniciar WinRAR en LUTI (la comprobación de la versión en línea no funcionaba correctamente).

Puedo confirmar que el paquete funciona; se instala y desinstala sin problemas.

Tu caso es interesante; no veo dónde está el problema.

Re: Eliminar Winrar no funciona

Publicado: 3 de junio de 2024 - 14:39
por sebastien4444
Bueno, al final creo que el problema no está en WAPT, sino en el entorno en el que estaba trabajando.

Estaba realizando estas pruebas desde un servidor donde había instalado la consola, y me encontraba con este comportamiento.

Finalmente, instalé la consola en un portátil de prueba, y no hubo problemas con mis pruebas de instalación/desinstalación (probadas con WinRAR y Thunderbird).
Así que el problema debe estar en el entorno del servidor que estaba usando inicialmente.
Y en ese servidor, no me aparece el mensaje "... ya instalado. Omitiendo" cuando reinstalo un paquete que ya está instalado.

Disculpen por hacerles perder el tiempo. :)

Re: Eliminar Winrar no funciona

Publicado: 4 de junio de 2024 - 10:28 a. m.
por sfonteneau
sebastien4444 escribió: 3 de junio de 2024 - 14:39 Disculpen por hacerles perder el tiempo. :)
Finalmente, esto nos permitió corregir nuestra comprobación de WinRAR en Luti, que no estaba funcionando correctamente, por lo que no se perdió tiempo ;)