Página 1 de 1

Paquete con solo un enlace

Publicado: 6 de marzo de 2019 - 09:33
por benoitpatin
Buen día,

Quiero crear un paquete que simplemente cree un enlace en el escritorio del usuario.
Me pareció bastante trivial, con ejemplos en toda la documentación o en Internet, y aún así no puedo lograrlo.

Aquí está mi código Python:

Código: Seleccionar todo

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


uninstallkey = []
def install():
    print('installing EDITML')
def session_setup():
  create_user_desktop_shortcut(r'Editer une liste de distribution',target='%systemroot%\system32\rundll32.exe dsquery.dll,OpenQueryWindow')
Y con cada intento de ejecutarlo, obtengo:

Código: Seleccionar todo

Ligne de Commande : session-setup "c:\waptdev\ADV-EDITML-wapt\WAPT\.."
Configuring c:\waptdev\ADV-EDITML-wapt ...
2019-03-06 09:27:59,496 CRITICAL Fatal error in session_setup function: -2147024809 : Paramètre incorrect.:
Traceback (most recent call last):
  File "C:\Program Files (x86)\wapt\waptpackage.py", line 1843, in call_setup_hook
    hookdata = hook_func()
  File "c:\waptdev\ADV-EDITML-wapt\setup.py", line 9, in session_setup
    create_user_desktop_shortcut(r'Editer une liste de distribution',target='%systemroot%\system32\rundll32.exe dsquery.dll,OpenQueryWindow')
  File "C:\Program Files (x86)\wapt\setuphelpers.py", line 472, in create_user_desktop_shortcut
    create_shortcut(sc_path,target,arguments,wDir,icon)
  File "C:\Program Files (x86)\wapt\setuphelpers.py", line 410, in create_shortcut
    winshell.CreateShortcut(path,target,arguments,wDir,(icon,0),'')
  File "C:\Program Files (x86)\wapt\lib\site-packages\winshell.py", line 887, in CreateShortcut
    lnk = shortcut (Target)
  File "C:\Program Files (x86)\wapt\lib\site-packages\winshell.py", line 507, in shortcut
    return Shortcut.from_target (source)
  File "C:\Program Files (x86)\wapt\lib\site-packages\winshell.py", line 417, in from_target
    **kwargs
  File "C:\Program Files (x86)\wapt\lib\site-packages\winshell.py", line 391, in __init__
    setattr (self, k, v)
  File "C:\Program Files (x86)\wapt\lib\site-packages\winshell.py", line 456, in _set_path
    self._shell_link.SetPath (path)
com_error: (-2147024809, 'Param\xe8tre incorrect.', None, None)

Done
>>> 
¿Alguien podría decirme qué sucede?

GRACIAS

Re: Paquete con solo un enlace

Publicado: 6 de marzo de 2019 - 09:42
por htouvet

Código: Seleccionar todo

def session_setup():
    with disable_file_system_redirection():
        create_user_desktop_shortcut(r'Editer une liste de distribution',target=makepath(system32(),'rundll32.exe'),arguments='dsquery.dll,OpenQueryWindow')

Re: Paquete con solo un enlace

Publicado: 6 de marzo de 2019 - 09:46
por benoitpatin
Gracias Hubert, olvidé que mi comando tenía un ejecutable y un argumento... :ups: