Ouvrir un exe correctement [Résolu]

Gnain 37 Messages postés vendredi 9 juin 2006Date d'inscription 29 avril 2011 Dernière intervention - 26 sept. 2008 à 22:51 - Dernière réponse : Gnain 37 Messages postés vendredi 9 juin 2006Date d'inscription 29 avril 2011 Dernière intervention
- 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
Gnain 37 Messages postés vendredi 9 juin 2006Date d'inscription 29 avril 2011 Dernière intervention - 27 sept. 2008 à 14:58
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!

Merci Gnain 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 72 internautes ce mois-ci

Commenter la réponse de Gnain
gillardg 3288 Messages postés jeudi 3 avril 2008Date d'inscription 14 septembre 2014 Dernière intervention - 26 sept. 2008 à 23:36
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
Kristof_Koder 920 Messages postés vendredi 3 août 2007Date d'inscription 27 octobre 2008 Dernière intervention - 26 sept. 2008 à 23:37
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
NISANDSYSTEMS 146 Messages postés vendredi 1 novembre 2002Date d'inscription 13 décembre 2014 Dernière intervention - 27 sept. 2008 à 00:03
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
Gnain 37 Messages postés vendredi 9 juin 2006Date d'inscription 29 avril 2011 Dernière intervention - 27 sept. 2008 à 00:29
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
Gnain 37 Messages postés vendredi 9 juin 2006Date d'inscription 29 avril 2011 Dernière intervention - 27 sept. 2008 à 03:15
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
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 27 sept. 2008 à 04:29
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
Gnain 37 Messages postés vendredi 9 juin 2006Date d'inscription 29 avril 2011 Dernière intervention - 27 sept. 2008 à 06:20
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
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 27 sept. 2008 à 06:47
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
pile_poil 682 Messages postés vendredi 6 avril 2007Date d'inscription 4 août 2012 Dernière intervention - 27 sept. 2008 à 10:11
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
cs_pluplu 616 Messages postés mercredi 18 décembre 2002Date d'inscription 4 juillet 2012 Dernière intervention - 27 sept. 2008 à 10:13
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.