Problème avec Shell

Signaler
Messages postés
898
Date d'inscription
mercredi 4 août 2010
Statut
Membre
Dernière intervention
22 mai 2021
-
Messages postés
2429
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
1 juin 2021
-
Bonjour,
Pourriez-vous me dire pourquoi ces 2 lignes fonctionnent
lngPid = ShellExecute(0, "Open", "C:\Temp\Package\setup.exe", vbNullString, vbNullString, 2)
lngPid = Shell("notepad.exe", vbNormalFocus)

mais
lngPid = Shell("C:\Temp\Package\setup.exe", vbNormalFocus)

donne un code erreur 5 "Invalid procedure call or argument" ?

2 réponses

Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
237
Une entorse à ma propre détermination de ne plus te répondre ==>>
Un programme lancé avec la fonction Shell est exécuté de manière asynchrone. Il arrive donc qu'il ne puisse se terminer avant que ne soient terminées toutes les instructions intervenant après l'utilisation de la fonction Shell
Le fonction Shell peut par ailleurs ne pas savoir déterminer seule quel programme utiliser pour exécuter une commande d'exécution. Elle retourne alors également un message d'erreur.
Messages postés
898
Date d'inscription
mercredi 4 août 2010
Statut
Membre
Dernière intervention
22 mai 2021
2
Un programme lancé avec la fonction Shellexecute est aussi exécuté de manière asynchrone.
La fonction Shell n'a pas à déterminer quel programme utiliser puisqu'il s'agit d'un .exe.
Pourquoi Shellexecute fonctionne-t-il alors que Shell donne une erreur 5 pour le lancement d'un même programme C:\Temp\Package\setup.exe ?
Messages postés
2429
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
1 juin 2021
137
Bonjour Herve_be
Ton programme "C:\Temp\Package\setup.exe" a-t-il une interface à l'écran ?