Execution d'une commande MsDos avec VB

Résolu
fiko81 Messages postés 381 Date d'inscription vendredi 24 septembre 2004 Statut Membre Dernière intervention 5 septembre 2010 - 9 juin 2005 à 14:58
fiko81 Messages postés 381 Date d'inscription vendredi 24 septembre 2004 Statut Membre Dernière intervention 5 septembre 2010 - 10 juin 2005 à 14:40
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

redblast Messages postés 27 Date d'inscription mercredi 20 octobre 2004 Statut Membre Dernière intervention 27 juin 2005
9 juin 2005 à 15:15
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
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
9 juin 2005 à 17:58
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
fiko81 Messages postés 381 Date d'inscription vendredi 24 septembre 2004 Statut Membre Dernière intervention 5 septembre 2010 3
10 juin 2005 à 14:40
Merci pour vos réponses. Avec shellExecute ça marche maintenant.

@+
Fiko ;-)
0
Rejoignez-nous