Página 1 de 1

[RESUELTO] Atajo de PyScripter

Publicado: 27 de febrero de 2024 - 12:00 p. m.
por rcharpeil
Servidor WAPT: 2.4 Debian 11 Bullseye
Consola de administración: Windows 10, WAPT 2.4
Paquete FlameShot

Hola, como no tengo muchos conocimientos de PyScripter, me gustaría añadir una línea a la configuración del paquete FlameShot que agregue automáticamente el acceso directo del software a \AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup para que FlameShot se inicie automáticamente al arrancar. ¿

Podrían ayudarme?
Gracias de antemano

.

Re: Atajo de PyScripter

Publicado: 28 de febrero de 2024 - 16:12
por dcardon
Hola Romain,

Es mejor colocarlo en el menú de inicio de la máquina en lugar del del usuario, a menos que desee permitir que los usuarios lo eliminen.

Código: Seleccionar todo

create_programs_menu_shortcut('test',target=makepath(programfiles, "Flameshot","bin", "flameshot.exe"),folder='StartUp'
Atentamente,

Denis

Re: Atajo de PyScripter

Publicado: 29 de febrero de 2024 - 10:11 a. m.
por rcharpeil
Hola, con la ayuda de mis superiores y de ti, he creado un script funcional que instala la aplicación y añade un acceso directo a la barra de tareas de Windows y a la carpeta de Inicio para todos los usuarios del ordenador. Comparto el código aquí para quien pueda estar interesado.
Saludos

Código: Seleccionar todo

from setuphelpers import *
import subprocess

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

"""
# Déclaration des variables globales - Avertissements : 1) Le contexte WAPT n'est disponible que dans les fonctions de paquet ; 2) Les variables globales ne sont pas persistantes entre les appels


def install():
    # Déclaration des variables locales

    # Installation du logiciel
    print("Installation : Flameshot-12.1.0-win64.msi")
    install_msi_if_needed('Flameshot-12.1.0-win64.msi')

    # Chemin vers le dossier de démarrage commun pour tous les utilisateurs
    all_users_startup_folder = os.path.join(os.getenv('ProgramData'), 'Microsoft', 'Windows', 'Start Menu', 'Programs', 'Startup')

    # Création du raccourci dans le dossier de démarrage commun pour tous les utilisateurs
    create_programs_menu_shortcut("Flameshot", makepath(programfiles, "Flameshot", "bin", "flameshot.exe"), folder=all_users_startup_folder)

    # Lancement de Flameshot
    print("Lancement de Flameshot...")
    subprocess.Popen(makepath(programfiles, "Flameshot", "bin", "flameshot.exe"))


def uninstall():
    # Suppression du raccourci du dossier de démarrage commun pour tous les utilisateurs
    remove()


def remove():
    # Chemin vers le raccourci dans le dossier de démarrage commun pour tous les utilisateurs
    all_users_startup_folder = os.path.join(os.getenv('ProgramData'), 'Microsoft', 'Windows', 'Start Menu', 'Programs', 'Startup')
    shortcut_path = os.path.join(all_users_startup_folder, "Flameshot.lnk")

    # Vérifier si le fichier du raccourci existe, puis le supprimer
    if os.path.exists(shortcut_path):
        os.remove(shortcut_path)
        print("Raccourci supprimé avec succès.")
    else:
        print("Le raccourci n'existe pas.")


Re: Atajo de PyScripter

Publicado: 29 de febrero de 2024 - 11:58 a. m.
por dcardon
Hola Romain,

gracias por tus comentarios, :-) marco el tema como RESUELTO.

Denis