Ouvrir un exe correctement [Résolu]

Messages postés
37
Date d'inscription
vendredi 9 juin 2006
Dernière intervention
29 avril 2011
- - Dernière réponse : Gnain
Messages postés
37
Date d'inscription
vendredi 9 juin 2006
Dernière intervention
29 avril 2011
- 27 sept. 2008 à 14:58
Bonjours,
Je suis débutant en vb et j'aurais besoin d'aide.

J'ai un problème pour ouvrir un exe correctement,
en utilisant la commande shell:

Private Sub Command1_Click()
Dim RetVal
RetVal = Shell("C:\Program Files\Boole & Partners\OptiCoupe\OptiCoupe.exe", 1)
End Sub

le programme ouvre normalement mais pas avec ses paramètres stocké dans un fichier .ini
ce que j'aimerais c'est que le prog s'ouvre avec ses paramètres comme quand je double click
sur son icon dans C:\Program Files\Boole & Partners\OptiCoupe\OptiCoupe.exe

j'ai essayer la commande ShellExecute, pas de changement
aussi avec CreateProcess... toujours pareil.

mais pourquoi donc en cliquant sur son icon ou un raccourci dans windows ca fonctionne
et pas avec une commande vb.

quelqu'un peu m'aider?
Merçi à l'avance.

Gnain!
Afficher la suite 

Votre réponse

11 réponses

Meilleure réponse
Messages postés
37
Date d'inscription
vendredi 9 juin 2006
Dernière intervention
29 avril 2011
3
Merci
Salut pluplu
et merçi de ton aide
il fallait bien se mettre dans le répertoir avec Chdir

La solusion de PCPT fonctionne aussi avec le
SEND KEYS API au lieu du SEND KEYS CLASSIQUE

merçi infiniment à tous pour votre vitesse de réponse

Gnain!

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

Commenter la réponse de Gnain
Messages postés
3288
Date d'inscription
jeudi 3 avril 2008
Dernière intervention
14 septembre 2014
0
Merci
je ne suis pas sur mais ça a peut etre quelque chose à voir avec le répertoire courant

Bonjour chez vous !
Commenter la réponse de gillardg
Messages postés
920
Date d'inscription
vendredi 3 août 2007
Dernière intervention
27 octobre 2008
0
Merci
Sans doute un problème lié au dossier de démarrage ? quel est le dossier de démarrage pour ton icone ?
Commenter la réponse de Kristof_Koder
Messages postés
146
Date d'inscription
vendredi 1 novembre 2002
Dernière intervention
13 décembre 2014
0
Merci
ton   "C:\Program Files\Boole & Partners\OptiCoupe\OptiCoupe.exe" ne serait il pas mieux en
"C:\Program Files\Boole&Partners\OptiCoupe\OptiCoupe.exe" sans espace.
J'ai déjà eu le tour.
Commenter la réponse de NISANDSYSTEMS
Messages postés
37
Date d'inscription
vendredi 9 juin 2006
Dernière intervention
29 avril 2011
0
Merci
réponse à Kristof_Koder
C:\Program Files\Boole & Partners\OptiCoupe\OptiCoupe.exe

réponse à NISANDSYSTEMS
Non il y a effectivement des espaces si je supprime les espaces, ce n'est plus le même chemin donc le prog ne s'ouvre pas.

le prog s'ouvre sans aucun paramètre
mais quand je click sur mon raccourci bureau ou directement sur le exe dans le répertoire cela fonctionne.

comment avoir avec une commande vb pour avoir exactement le même résultat
pourtant c'est le même chemin sinon il ne s'ouvrirait tout simplement pas.

Gnain!
Commenter la réponse de Gnain
Messages postés
37
Date d'inscription
vendredi 9 juin 2006
Dernière intervention
29 avril 2011
0
Merci
est-il possible de faire un raccourci dans un form vb6, identique aux raccourcis que l'on fait sur notre bureau.

Gnain!
Commenter la réponse de Gnain
Messages postés
13368
Date d'inscription
lundi 13 décembre 2004
Dernière intervention
3 février 2018
0
Merci
salut,

çà donne quoi avec la procédure StartProcess ?
http://www.codyx.org/snippet_ouvrir-document-lancer-executable_25.aspx#1548
(oui tu as essayé avec shellexecute mais parfois une erreur de param et on passe à côté...)

est-ce que dans ton raccourci bureau il y a le fichier ini en param?

que donne StartProcess sur le chemin directement du raccourci? (et non de sa cible)

créer un raccourci en VB :
http://www.codyx.org/snippet_creer-raccourci-application-sur-bureau_337.aspx#1050



Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Commenter la réponse de PCPT
Messages postés
37
Date d'inscription
vendredi 9 juin 2006
Dernière intervention
29 avril 2011
0
Merci
Salut PCPT
avec la procédure StartProcess toujours pareil.

J'ai penser a une chose mais je ne trouve pas la syntaxe précise

Dans les propriétés de mon raccourci j'ai ajouté vis a vis
"touche de raccourci" Ctrl + Alt + H
pour avoir un raccourci clavier pour ouvrir le prog.

donc avec un sendkeys je pourrais avoir ce que je veut.
mais bon il ne se passe rien, je n"ai surrement pas la bonne syntaxe

Private Sub Command1_Click()
SendKeys "^%(H)"
End Sub

J'ai essayé plusieurs combinaison
SendKeys "^(%(H))"
SendKeys ("^%(H)")
SendKeys "^(%H)"

mais quel est la bonne syntaxe pour envoyé un sendkeys
de Ctrl + Alt + H qui est associer à l'ouverture d'un prog
Gnain!
Commenter la réponse de Gnain
Messages postés
13368
Date d'inscription
lundi 13 décembre 2004
Dernière intervention
3 février 2018
0
Merci
re
pose 2 boutons sur une form et teste ce code, avec le debug.print tu verras pourquoi le sendkeys ne convient pas
(et accessoirement tu as alors le bon code ^^)



Option Explicit




Private Const 
KEYEVENTF_KEYUP 
As Long 

&H2


Private Declare Sub 
keybd_event 
Lib 
"user32.dll" 
(
ByVal 
bVk 
As Byte

ByVal 
bScan 
As Byte
,
ByVal
dwFlags
As Long
,
ByVal
dwExtraInfo
As Long
)






Private Sub 
Form_Load()

    Me.KeyPreview = True
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    Debug.Print Time & "  " & KeyCode & "   " & Shift
End Sub

'   SEND KEYS
CLASSIQUE
Private Sub Command1_Click()
    SendKeys "^%H", True
End Sub

'   SEND KEYS
API
Private Sub Command2_Click()
    keybd_event vbKeyControl, 0, 0, 0   'CTRL
        keybd_event vbKeyMenu, 0, 0, 0  'ALT
            keybd_event vbKeyH, 0, 0, 0 'H
    
            keybd_event vbKeyH, 0, KEYEVENTF_KEYUP, 0
        keybd_event vbKeyMenu, 0, KEYEVENTF_KEYUP, 0
    keybd_event vbKeyControl, 0, KEYEVENTF_KEYUP, 0
End Sub





c'est toujours une solution un peu plus propre (par API) mais c'est louche quand même ton histoire ...


++
Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Commenter la réponse de PCPT
Messages postés
682
Date d'inscription
vendredi 6 avril 2007
Dernière intervention
4 août 2012
0
Merci
bonjour
le probleme vient bien des espaces dans le chemin de l'exe ou du fichier à ouvrir
shell n'aime pas du tout
la parade c'est :
RetVal = Shell(Chr(34) &  "C:\Program Files\Boole & Partners\OptiCoupe\OptiCoupe.exe" & Chr(34), 1)

[reglement.aspx ]si c'est la solution, penser : REPONSE ACCEPTEE
Commenter la réponse de pile_poil
Messages postés
616
Date d'inscription
mercredi 18 décembre 2002
Dernière intervention
4 juillet 2012
0
Merci
Peut être qu'avant de lancer ton application il faut se mettre dans le répertoire ??
essaye ça

Private Sub Command1_Click()
   Dim RetVal
   Chdir "C:\Program Files\Boole & Partners\OptiCoupe"
   RetVal = Shell("C:\Program Files\Boole & Partners\OptiCoupe\OptiCoupe.exe", 1)
End Sub

Pascal Laurençon
Commenter la réponse de cs_pluplu

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.