Execution d'une commande MsDos avec VB

Résolu
Signaler
Messages postés
381
Date d'inscription
vendredi 24 septembre 2004
Statut
Membre
Dernière intervention
5 septembre 2010
-
Messages postés
381
Date d'inscription
vendredi 24 septembre 2004
Statut
Membre
Dernière intervention
5 septembre 2010
-
Bonjour à tous,

Je suis face à un problème inexpliqué : j'ai une appli msdos qui accèpte des commandes. Je lance cette appli à l'aide de VBA (EXCEL) et ça marche.
Je veux passer ce bout de code sur VB et là ça ne marche plus. (J'ai fais le test avec shell et shellexecute)

La commande est la suivante :

Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
(ByVal hWnd As Long, ByVal lpOperation As String, _
ByVal lpFile As String, ByVal lpParameters As String, _
ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Retour = ShellExecute(0,"open","CheminAppli","command,"",0)

--> Retour = 42 après la commande donc a prioris c'est ok mais rien ne ce passe...

Fiko ;-)

3 réponses

Messages postés
27
Date d'inscription
mercredi 20 octobre 2004
Statut
Membre
Dernière intervention
27 juin 2005

Salut,



En mettant zéro au dernier paramétre, l'application est cachée (c'est
peut-être ce que tu veux), ensuite il faut peut-être impérativement un
handle à la commande pour qu'elle fonctionne (Form1.hwnd par ex.).



Retour = ShellExecute(Form1.hwnd,"open","CheminAppli","command,"",5)
3
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
Salut
Si tu désires lancer un executable, il vaut mieux utiliser la commande SHELL plus simple à utiliser.
ShellExecute est pratique quand on veut laner un fichier .DOC pour qu'il lance automatiquement le programme associé par défaut.
Pour les détails des paramètres des APIs, charge et installe 'api-guide', gratuit et dispo sur http://www.allapi.net
Pour chaque API, un exemple en VB6

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
0
Messages postés
381
Date d'inscription
vendredi 24 septembre 2004
Statut
Membre
Dernière intervention
5 septembre 2010
3
Merci pour vos réponses. Avec shellExecute ça marche maintenant.

@+
Fiko ;-)
0