Problème avec ShellExecute_()

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

Problème avec ShellExecute_()

Message par gansta93 »

Bonjour,

Mon ShellExecute_() ne fonctione pas dans ce code. Quelqu'un pourait-il m'expliquer pourquoi ?

Code : Tout sélectionner

If OpenWindow(0,0,0,608,608,#PB_Window_MinimizeGadget|#PB_Window_ScreenCentered|#PB_Window_SystemMenu|#PB_Window_TitleBar,"Explorer MP3") = 0 Or CreateGadgetList(WindowID()) = 0
  End
EndIf
ExplorerListGadget(0,4,4,600,600,"E:\*.mp3;*.wav;*.m3U;*.pls",#PB_Explorer_GridLines|#PB_Explorer_HeaderDragDrop|#PB_Explorer_NoDriveRequester|#PB_Explorer_NoMyDocuments|#PB_Explorer_AlwaysShowSelection)

ChangeListIconGadgetDisplay(0,3)

For n=1 To 4
  RemoveGadgetColumn(0,0)
Next

AddGadgetColumn(0,0,#PB_Explorer_Name,200)
AddGadgetColumn(0,1,#PB_Explorer_Type,200)
AddGadgetColumn(0,2,#PB_Explorer_Size,200)

Repeat
ActivateGadget(0)
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
End
Case #PB_EventGadget
If EventType()=#PB_EventType_LeftDoubleClick
File$ = GetGadgetText(0) + GetGadgetItemText(0,GetGadgetState(0),0)
ShellExecute_(WindowID(0),"open",File$,#NULL$,#NUL$,#NUL$)
EndIf
EndSelect
ForEver
End
Normalement, aucune UserLib utilisée.

Merci d'avance.
Avatar de l’utilisateur
Droopy
Messages : 1151
Inscription : lun. 19/juil./2004 22:31

Message par Droopy »

Pourquoi tu n'utilise pas

Code : Tout sélectionner

RunProgram(File$,"","")
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

Message par gansta93 »

Parce que ça ne marche pas. RunProgram() il me semble ne tien pas compte des extentions de fichier.
Avatar de l’utilisateur
Droopy
Messages : 1151
Inscription : lun. 19/juil./2004 22:31

Message par Droopy »

Chez moi j'ai Windows Media Player associé aux MP3,
et Notepad associé aux TXT, avec RunProgram("xxx.mp3")
ou RunProgram("xxx.txt") j'ai bien le Player ou Notepad qui s'ouvre
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

Message par gansta93 »

Ben je c pas comment Winamp fait son compte, mais ça marche pas pour les mp3. Mais tu as raison, merci. :-D
brossden
Messages : 833
Inscription : lun. 26/janv./2004 14:37

Message par brossden »

Bonjour à tous

Essaye avec cette ligne si tu as WinAmp installé:

Code : Tout sélectionner

        res=ShellExecute_(WindowID(0),"open","winamp.exe",File$,"","")
Donc pour l'ensemble du code :

Code : Tout sélectionner

If OpenWindow(0,0,0,608,608,#PB_Window_MinimizeGadget|#PB_Window_ScreenCentered|#PB_Window_SystemMenu|#PB_Window_TitleBar,"Explorer MP3") = 0 Or CreateGadgetList(WindowID()) = 0
  End
EndIf
ExplorerListGadget(0,4,4,600,600,"E:\*.mp3;*.wav;*.m3U;*.pls",#PB_Explorer_GridLines|#PB_Explorer_HeaderDragDrop|#PB_Explorer_NoDriveRequester|#PB_Explorer_NoMyDocuments|#PB_Explorer_AlwaysShowSelection)

ChangeListIconGadgetDisplay(0,3)

For n=1 To 4
  RemoveGadgetColumn(0,0)
Next

AddGadgetColumn(0,0,#PB_Explorer_Name,200)
AddGadgetColumn(0,1,#PB_Explorer_Type,200)
AddGadgetColumn(0,2,#PB_Explorer_Size,200)

Repeat
  ActivateGadget(0)
  Select WaitWindowEvent()
    Case #PB_Event_CloseWindow
      End
    Case #PB_EventGadget
      If EventType()=#PB_EventType_LeftDoubleClick
        File$ = GetGadgetText(0) + GetGadgetItemText(0,GetGadgetState(0),0)
        Debug File$
        res=ShellExecute_(WindowID(0),"open","winamp.exe",File$,"","")
        Debug res
      EndIf
  EndSelect
ForEver
End
Denis

Bonne Jounée à tous
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

Message par gansta93 »

Ah oui c vrai, Winamp s'inscrit dans le registre pour pouvoir faire ça... merci.
Les deux solutions marchent maintenant, les miracles de l'informatique. :-D

Encore merci à vous. :-D
Répondre