Ouvrir une application en la selectionnant dans un filelistbox

Résolu
developvbdebut Messages postés 476 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 2 juin 2012 - 8 oct. 2004 à 07:04
cs_rene38 Messages postés 1858 Date d'inscription samedi 29 juin 2002 Statut Membre Dernière intervention 17 octobre 2013 - 10 oct. 2004 à 21:04
Boujour tout le monde

Je souhaiterai ouvrir les application en les selectionnent dans un filelistbox.

Voici le code que que j'ai fais avec mon intuition.

If File1.Selected = True Then ShellExecute , "open"
End If

Le problème c'est que cela ne fonctionne pas, il selectionne le Selected en disan "argument non fictif".

Pourriez vous me dire où est le problème et m'aider à le regler SVP.

Mercie d'avance de votre aide

A bientôt

10 réponses

developvbdebut Messages postés 476 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 2 juin 2012 1
10 oct. 2004 à 20:52
Bonsoir

j'ai réussie!!!!!!!

Je vous explique comment.

J'ai mis le code ci dessous dans un module.
Public 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


et la ligne ci-dessous au debut de la form
Private Const SW_SHOWNORMAL As Long = 1


Dans le bouton, le code ci-dessou.
Private Sub ouvrir_Click()

  
 ShellExecute Me.hWnd, "open", File1.Path & "" & File1.List(File1.ListIndex), vbNullString, File1.Path, SW_SHOWNORMAL

End Sub


Je vous remercie de votre aide.

Cordiallement

A bientôt
3
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
8 oct. 2004 à 07:15
If File1.Selected = True Then
ShellExecute Me.hwnd, "open", File1.List ( File1.ListIndex ), vbNullString, "C:", SW_SHOWNORMAL
End If

Amusez-vous ! ;)
Renfield - thomas_reynald@msn.com
Admin CodeS-SourceS
0
developvbdebut Messages postés 476 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 2 juin 2012 1
8 oct. 2004 à 07:39
re bonjour

Mercie pour ce code, mais sa ne fonctionne pas il marque toujour "cette argument n'est pas facultatif". en selectionnent File1.Selected

Quand penssez vous?

Mercie

A bientôt
0
cs_rene38 Messages postés 1858 Date d'inscription samedi 29 juin 2002 Statut Membre Dernière intervention 17 octobre 2013 11
8 oct. 2004 à 14:58
Bonjour

Private Sub File1_Click()
ShellExecute Me.hwnd, "open", File1.List ( File1.ListIndex ), vbNullString, "C:", SW_SHOWNORMAL
End Sub

devrait suffire
Sinon, la syntaxe est :
File1.Selected(Index du fichier)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
8 oct. 2004 à 17:01
lol, j'avais pas testé ca.... j'avais vu qu'il manquait un paquet d'arguments sur ShellExecute.... ;-)

Amusez-vous ! ;)
Renfield - thomas_reynald@msn.com
Admin CodeS-SourceS
0
developvbdebut Messages postés 476 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 2 juin 2012 1
9 oct. 2004 à 05:13
bonjour

Je vous remercie de votre aide, mais sa ne fonctionne pas encore.

Voici le code tel dans un bouton.


ShellExecute Me.hwnd, "open", File1.List(File1.ListIndex), vbNullString, "C:",  SW_SHOWNORMAL



Le problème est que l'orsque je selectionne et que je clique sur le bouton, il marque "variable non définie" en selectionnant SW_SHOWNORMAL.

Pour information:

Je travail avec vb6

cordiallement

A bientôt
0
cs_rene38 Messages postés 1858 Date d'inscription samedi 29 juin 2002 Statut Membre Dernière intervention 17 octobre 2013 11
9 oct. 2004 à 12:33
Normal : SW_SHOWNORMAL n'est pas une constante intrinsèque à VB.
Soit tu remplaces SW_SHOWNORMAL par 1
soit tu déclares

Private Const SW_SHOWNORMAL As Long = 1
0
developvbdebut Messages postés 476 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 2 juin 2012 1
9 oct. 2004 à 22:00
Bonsoir tout le monde

J'ai bien placé le code ci-dessou au debut de la form.
Private Const SW_SHOWNORMAL As Long = 1


Le code ci-dessou est placé dans le bouton ouvrir.
Private Sub ouvrir_Click()

  ShellExecute Me.hwnd, "open", File1.List(File1.ListIndex), vbNullString, "C:", SW_SHOWNORMAL


maintenant il marque erreur de compilation " procedure sub ou fonction non définie" en selectionnant ShellExecute

Est ce qu'il ne comprend pas ShellExecute ?

cordiallement

A bientôt
0
cs_rene38 Messages postés 1858 Date d'inscription samedi 29 juin 2002 Statut Membre Dernière intervention 17 octobre 2013 11
9 oct. 2004 à 22:12
As-tu pensé à mettre dans un module ou dans la section Général-Déclarations de ta feuille la déclaration de la fonction ?

(Private à remplacer par Public si c'est dans un module)

Essaie ceci :

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

Private Sub ouvrir_Click()
Private Const SW_SHOWNORMAL As Long = 1
ShellExecute Me.hwnd, "open", File1.Path & "" & File1.List(File1.ListIndex), vbNullString, File1.Path, SW_SHOWNORMAL
End Sub
0
cs_rene38 Messages postés 1858 Date d'inscription samedi 29 juin 2002 Statut Membre Dernière intervention 17 octobre 2013 11
10 oct. 2004 à 21:04
ça ne ressemblerait pas étrangement, par hasard, à ce que je t'ai proposé ci-dessus ?
Enfin, l'essentiel : tu sais maintenant te servir de la fonction API
ShellExecute.
Bonne continuation.
0
Rejoignez-nous