Pb lancement à partir d'un shell

Signaler
Messages postés
4
Date d'inscription
mercredi 23 juillet 2003
Statut
Membre
Dernière intervention
29 juillet 2004
-
Messages postés
4
Date d'inscription
mercredi 23 juillet 2003
Statut
Membre
Dernière intervention
29 juillet 2004
-
Bonjour,

Je cherche à lancer un prog (un exe issu de fortran pour info), j'utilise donc la commande suivante dans mon code:

Shell str & "spptotxt" '<- c'est le nom de l'exe ;)

Le problème est que l'exe se comporte de manière différente que lorsque je l'execute "à la main".

J'ai utilisé les différentes solutions d'API pour attendre l'execution d'un shell mentionnées sur ce forum mais rien n'y fait.

Si quelqu'un voit une solution à mon problème merci de me l'indiquer.

-----------------------------------------------------------------------------------

un jour un vieux sage a dit: "plus que c'est facile plus que c'est énervant"

6 réponses

Messages postés
1352
Date d'inscription
lundi 27 octobre 2003
Statut
Membre
Dernière intervention
19 novembre 2008
2
oui mais c'est quoi le problème ??

Le comportement différent se situe où ?

Info Commande :

Shell(pathname[,windowstyle])

windowstyle: facultatif (utilises les constantes suivantes)

vbHide : La fenêtre est masquée et activée.
vbNormalFocus : La fenêtre est activée et rétablie à sa taille et à sa position d'origine.
vbMinimizedFocus : La fenêtre est affichée sous forme d'icône et activée.
vbMaximizedFocus : La fenêtre est agrandie et activée.
vbNormalNoFocus : La fenêtre est rétablie à sa taille et à sa position les plus récentes. La fenêtre active reste active.
vbMinimizedNoFocus : La fenêtre est affichée sous forme d'icône. La fenêtre active reste active

MSN : cyberscorp2004@msn.com
Qui s'y frotte, s'y pique .
Messages postés
4
Date d'inscription
mercredi 23 juillet 2003
Statut
Membre
Dernière intervention
29 juillet 2004

Alors,

le problème c'est que l'exe, qui est censé extraire des données d'un binaire vers un autre format, se lance sous la forme d'un dos, donne la main à l utilisateur qui rentre le nom du fichier à convertir mais une fois validé, se ferme et n'effectue rien du tout (pourtant l'exe indépendamment marche bien).

J'ai d'abord cru à un problème de temporisation, le programme n'avait peut être pas le temps de travailler,d'où l'utilisation des API,mais en fait ça n'a pas fonctionné.

j'espère avoir été un peu plus clair dans mes explications.
Messages postés
190
Date d'inscription
lundi 24 mars 2003
Statut
Membre
Dernière intervention
27 septembre 2005

utilise l'API "ShellExecute"

Un petit exemple

Option Explicit
'ShellExecute Lance un programme a partir de l'extention de fichier
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
Const SW_SHOWNORMAL = 1
  
Private Sub Form_Load()
    
    'Me.hwnd = Le handle de la feuille
    'lpOperation = "Open"
    'lpFile = Chemin du fichier a lancer
    'lpParameters = vbNullString
    'lpDirectory = "C:"
    'nShowCmd = Etat de la fenetre (SW_SHOWNORMAL)
'Ne pas oublier l'extention "EXE" et le chemin exact de ton exe
ShellExecute Me.hwnd, "Open", _
    "C:\Mes documents\spptotxt.EXE", _
    vbNullString, "C:", SW_SHOWNORMAL
Unload Me
End
End Sub


Bonne prog et A+
MD
Messages postés
4
Date d'inscription
mercredi 23 juillet 2003
Statut
Membre
Dernière intervention
29 juillet 2004

Désolé g oublié de préciser que je travaillais avec VBA,
il ne semble pas spporter la propriété handle.

Il y a t il une référence particulière à ajouter dans les bibliothèques, parceque j'en ai pas trouvé en tout cas.

Merci pour votre aide en tout cas.

PS: quand on est un boulet c'est pour la vie.... ;)
Messages postés
190
Date d'inscription
lundi 24 mars 2003
Statut
Membre
Dernière intervention
27 septembre 2005

A tu essaye comme ça en VBA

ret = Shell("C:\Mes documents\spptotxt.EXE", 1)

A+
MD
Messages postés
4
Date d'inscription
mercredi 23 juillet 2003
Statut
Membre
Dernière intervention
29 juillet 2004

Bon toujours ben ça marche toujours pas.

Merci qd même

@+