Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Ouvrir un fichier audio avec le lecteur par default.

10 réponses
Avatar
Blaster
Bonsoir,

Je voudrais créer un petit logiciel, mais je reste blocer sur un point, je
trouve aucun code qui me permet d'ouvrir un fichier Wav, mp3 etc... avec le
lecteur par défault en cliquant sur un linkLabel ou bouton.. Si quelqu'un
aurrait une source...

Merci d'avance.

Cordialement,

Blaster.

10 réponses

Avatar
Jean-marc
Blaster a écrit :

Bonsoir,

Je voudrais créer un petit logiciel, mais je reste blocer sur un point, je
trouve aucun code qui me permet d'ouvrir un fichier Wav, mp3 etc... avec le
lecteur par défault en cliquant sur un linkLabel ou bouton.. Si quelqu' un
aurrait une source...



Hello,

le plus facile et le plus standard est d'utiliser la fonction
ShellExecute de l'API Windows.
VOici un petit exemple:

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 Command1_Click()
Dim r As Long

r = ShellExecute(0, "open", "c:gameover.wav", vbNullString,
vbNullString, 0)

End Sub

Et voila :-)
Marche aussi pour ouvrir un lien avec le navigateur par défaut, ouvrir
tout type de document avec l'application par défaut pour ce type, etc.


--
Jean-marc
Avatar
Blaster
"Jean-marc" wrote:

Blaster a écrit :

> Bonsoir,
>
> Je voudrais créer un petit logiciel, mais je reste blocer sur un point, je
> trouve aucun code qui me permet d'ouvrir un fichier Wav, mp3 etc... avec le
> lecteur par défault en cliquant sur un linkLabel ou bouton.. Si quelqu'un
> aurrait une source...

Hello,

le plus facile et le plus standard est d'utiliser la fonction
ShellExecute de l'API Windows.
VOici un petit exemple:

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 Command1_Click()
Dim r As Long

r = ShellExecute(0, "open", "c:gameover.wav", vbNullString,
vbNullString, 0)

End Sub

Et voila :-)
Marche aussi pour ouvrir un lien avec le navigateur par défaut, ouvrir
tout type de document avec l'application par défaut pour ce type, etc.


--
Jean-marc





Re bonsoir,

Merci d'avoir répondu aussi vite !

j'ai essailler ce code mais il m'affiche un genre d'erreur, la voici :

Un appel à la fonction PInvoke
'WindowsApplication1!WindowsApplication1.Form1::ShellExecute' a déséquilibré
la pile. Cela peut se produire, car la signature PInvoke managée ne
correspond pas à la signature cible non managée. Vérifiez que la convention
d'appel et les paramètres de la signature PInvoke correspondent à la
signature non managée cible.

Je ne vois pas trop d'ou sa pourrait provenir...

Cordialement,

Blaster.
Avatar
Clive Lumb
Blaster wrote:

Re bonsoir,

Merci d'avoir répondu aussi vite !

j'ai essailler ce code mais il m'affiche un genre d'erreur, la voici :

Un appel à la fonction PInvoke
'WindowsApplication1!WindowsApplication1.Form1::ShellExecute' a
déséquilibré la pile. Cela peut se produire, car la signature PInvoke
managée ne correspond pas à la signature cible non managée. Vérifiez
que la convention d'appel et les paramètres de la signature PInvoke
correspondent à la signature non managée cible.

Je ne vois pas trop d'ou sa pourrait provenir...

Cordialement,




Vu le message d'erreur tu es en vb.net.
Tu devrais poser la question dans le groupe idoine
microsoft.public.fr.dotnet.vb
Toutefois, AllApi nous dit d'utiliser System.Diagnostics.Process, comme
ceci:
Imports System.Diagnostics
Public Module modmain
Sub Main()
'The KPD-Team 2001
'URL: http://www.allapi.net/dotnet/
'E-Mail:
Dim NewProcess as Process = new Process
NewProcess.Start("C:MonMP3.mp3")
End Sub
End Module

Clive
Avatar
Blaster
"Clive Lumb" wrote:

Blaster wrote:

> Re bonsoir,
>
> Merci d'avoir répondu aussi vite !
>
> j'ai essailler ce code mais il m'affiche un genre d'erreur, la voici :
>
> Un appel à la fonction PInvoke
> 'WindowsApplication1!WindowsApplication1.Form1::ShellExecute' a
> déséquilibré la pile. Cela peut se produire, car la signature PInvoke
> managée ne correspond pas à la signature cible non managée. Vérifiez
> que la convention d'appel et les paramètres de la signature PInvoke
> correspondent à la signature non managée cible.
>
> Je ne vois pas trop d'ou sa pourrait provenir...
>
> Cordialement,
>

Vu le message d'erreur tu es en vb.net.
Tu devrais poser la question dans le groupe idoine
microsoft.public.fr.dotnet.vb
Toutefois, AllApi nous dit d'utiliser System.Diagnostics.Process, comme
ceci:
Imports System.Diagnostics
Public Module modmain
Sub Main()
'The KPD-Team 2001
'URL: http://www.allapi.net/dotnet/
'E-Mail:
Dim NewProcess as Process = new Process
NewProcess.Start("C:MonMP3.mp3")
End Sub
End Module

Clive






Bonjour,

Je suis bien en Visual Basic 2005 et non en .Net.
C'est bien la première fois que j'ai une telle erreur, sa doit bientôt faire
plusieures heures que j'éssaille de trouver le problème sans résultat :(
Je cherche encore un peut aujourd'huis, et je vous tien au courant.

Bonne journée,

Cordialement,

Blaster.
Avatar
Clive Lumb
"Blaster" a écrit dans le message de
news:


"Clive Lumb" wrote:

> Blaster wrote:
>
> > Re bonsoir,
> >
> > Merci d'avoir répondu aussi vite !
> >
> > j'ai essailler ce code mais il m'affiche un genre d'erreur, la voici :
> >
> > Un appel à la fonction PInvoke
> > 'WindowsApplication1!WindowsApplication1.Form1::ShellExecute' a
> > déséquilibré la pile. Cela peut se produire, car la signature PInvoke
> > managée ne correspond pas à la signature cible non managée. Vérifiez
> > que la convention d'appel et les paramètres de la signature PInvoke
> > correspondent à la signature non managée cible.
> >
> > Je ne vois pas trop d'ou sa pourrait provenir...
> >
> > Cordialement,
> >
>
> Vu le message d'erreur tu es en vb.net.
> Tu devrais poser la question dans le groupe idoine
> microsoft.public.fr.dotnet.vb
> Toutefois, AllApi nous dit d'utiliser System.Diagnostics.Process, comme
> ceci:
> Imports System.Diagnostics
> Public Module modmain
> Sub Main()
> 'The KPD-Team 2001
> 'URL: http://www.allapi.net/dotnet/
> 'E-Mail:
> Dim NewProcess as Process = new Process
> NewProcess.Start("C:MonMP3.mp3")
> End Sub
> End Module
>
> Clive
>
>
>

Bonjour,

Je suis bien en Visual Basic 2005 et non en .Net.
C'est bien la première fois que j'ai une telle erreur, sa doit bientôt


faire
plusieures heures que j'éssaille de trouver le problème sans résultat :(
Je cherche encore un peut aujourd'huis, et je vous tien au courant.

Bonne journée,

Cordialement,

Blaster.



VB 2005 c'est .Net !
Avatar
Blaster
"Clive Lumb" wrote:


"Blaster" a écrit dans le message de
news:
>
>
> "Clive Lumb" wrote:
>
> > Blaster wrote:
> >
> > > Re bonsoir,
> > >
> > > Merci d'avoir répondu aussi vite !
> > >
> > > j'ai essailler ce code mais il m'affiche un genre d'erreur, la voici :
> > >
> > > Un appel à la fonction PInvoke
> > > 'WindowsApplication1!WindowsApplication1.Form1::ShellExecute' a
> > > déséquilibré la pile. Cela peut se produire, car la signature PInvoke
> > > managée ne correspond pas à la signature cible non managée. Vérifiez
> > > que la convention d'appel et les paramètres de la signature PInvoke
> > > correspondent à la signature non managée cible.
> > >
> > > Je ne vois pas trop d'ou sa pourrait provenir...
> > >
> > > Cordialement,
> > >
> >
> > Vu le message d'erreur tu es en vb.net.
> > Tu devrais poser la question dans le groupe idoine
> > microsoft.public.fr.dotnet.vb
> > Toutefois, AllApi nous dit d'utiliser System.Diagnostics.Process, comme
> > ceci:
> > Imports System.Diagnostics
> > Public Module modmain
> > Sub Main()
> > 'The KPD-Team 2001
> > 'URL: http://www.allapi.net/dotnet/
> > 'E-Mail:
> > Dim NewProcess as Process = new Process
> > NewProcess.Start("C:MonMP3.mp3")
> > End Sub
> > End Module
> >
> > Clive
> >
> >
> >
>
> Bonjour,
>
> Je suis bien en Visual Basic 2005 et non en .Net.
> C'est bien la première fois que j'ai une telle erreur, sa doit bientôt
faire
> plusieures heures que j'éssaille de trouver le problème sans résultat :(
> Je cherche encore un peut aujourd'huis, et je vous tien au courant.
>
> Bonne journée,
>
> Cordialement,
>
> Blaster.

VB 2005 c'est .Net !






J'ai du mal a comprendre, comment ce fait-il que touts les autres code (VB)
que j'ai utiliser on tous tres bien fonctionner ?
Avatar
jm
"Blaster" wrote in message
news:


"Jean-marc" wrote:

Blaster a écrit :

> Bonsoir,
>
> Je voudrais créer un petit logiciel, mais je reste blocer sur un point,
> je
> trouve aucun code qui me permet d'ouvrir un fichier Wav, mp3 etc...
> avec le
> lecteur par défault en cliquant sur un linkLabel ou bouton.. Si
> quelqu'un
> aurrait une source...

Hello,

le plus facile et le plus standard est d'utiliser la fonction
ShellExecute de l'API Windows.
VOici un petit exemple:

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 Command1_Click()
Dim r As Long

r = ShellExecute(0, "open", "c:gameover.wav", vbNullString,
vbNullString, 0)

End Sub

Et voila :-)
Marche aussi pour ouvrir un lien avec le navigateur par défaut, ouvrir
tout type de document avec l'application par défaut pour ce type, etc.


--
Jean-marc





Re bonsoir,

Merci d'avoir répondu aussi vite !

j'ai essailler ce code mais il m'affiche un genre d'erreur, la voici :

Un appel à la fonction PInvoke
'WindowsApplication1!WindowsApplication1.Form1::ShellExecute' a
déséquilibré
la pile. Cela peut se produire, car la signature PInvoke managée ne
correspond pas à la signature cible non managée. Vérifiez que la
convention
d'appel et les paramètres de la signature PInvoke correspondent à la
signature non managée cible.

Je ne vois pas trop d'ou sa pourrait provenir...



Hello,
moi non plus je ne vois pas. Jamais vu ça, mais surtout je n'ai jamais vu un
message d'erreur de ce genre la.
Dans quel genre d'environnement obtiens tu ceci?? Pas dans l'IDE de VB6?

--
Jean-marc
Avatar
Clive Lumb
"Blaster" a écrit dans le message de
news:


"Clive Lumb" wrote:

>
> "Blaster" a écrit dans le message de
> news:
> >
> >
> > "Clive Lumb" wrote:
> >
> > > Blaster wrote:
> > >
> > > > Re bonsoir,
> > > >
> > > > Merci d'avoir répondu aussi vite !
> > > >
> > > > j'ai essailler ce code mais il m'affiche un genre d'erreur, la


voici :
> > > >
> > > > Un appel à la fonction PInvoke
> > > > 'WindowsApplication1!WindowsApplication1.Form1::ShellExecute' a
> > > > déséquilibré la pile. Cela peut se produire, car la signature


PInvoke
> > > > managée ne correspond pas à la signature cible non managée.


Vérifiez
> > > > que la convention d'appel et les paramètres de la signature


PInvoke
> > > > correspondent à la signature non managée cible.
> > > >
> > > > Je ne vois pas trop d'ou sa pourrait provenir...
> > > >
> > > > Cordialement,
> > > >
> > >
> > > Vu le message d'erreur tu es en vb.net.
> > > Tu devrais poser la question dans le groupe idoine
> > > microsoft.public.fr.dotnet.vb
> > > Toutefois, AllApi nous dit d'utiliser System.Diagnostics.Process,


comme
> > > ceci:
> > > Imports System.Diagnostics
> > > Public Module modmain
> > > Sub Main()
> > > 'The KPD-Team 2001
> > > 'URL: http://www.allapi.net/dotnet/
> > > 'E-Mail:
> > > Dim NewProcess as Process = new Process
> > > NewProcess.Start("C:MonMP3.mp3")
> > > End Sub
> > > End Module
> > >
> > > Clive
> > >
> > >
> > >
> >
> > Bonjour,
> >
> > Je suis bien en Visual Basic 2005 et non en .Net.
> > C'est bien la première fois que j'ai une telle erreur, sa doit bientôt
> faire
> > plusieures heures que j'éssaille de trouver le problème sans résultat


:(
> > Je cherche encore un peut aujourd'huis, et je vous tien au courant.
> >
> > Bonne journée,
> >
> > Cordialement,
> >
> > Blaster.
>
> VB 2005 c'est .Net !
>
>
>

J'ai du mal a comprendre, comment ce fait-il que touts les autres code


(VB)
que j'ai utiliser on tous tres bien fonctionner ?



Principalement parceque VB.Net est 90% compatible avec VB6 (entre autre il y
a un module de compatibilité fourni exprès).
Donc la plupart des fonctions VB6 existent en VB.Net. Par contre tout ce qui
a trait au système d'exploitation a été remanié et certains appels API
échouent (comme dans ton cas)

As-tu essayé la soluce allapi.net que j'ai trouvé ?

Clive
Avatar
Blaster
"Clive Lumb" wrote:


"Blaster" a écrit dans le message de
news:
>
>
> "Clive Lumb" wrote:
>
> >
> > "Blaster" a écrit dans le message de
> > news:
> > >
> > >
> > > "Clive Lumb" wrote:
> > >
> > > > Blaster wrote:
> > > >
> > > > > Re bonsoir,
> > > > >
> > > > > Merci d'avoir répondu aussi vite !
> > > > >
> > > > > j'ai essailler ce code mais il m'affiche un genre d'erreur, la
voici :
> > > > >
> > > > > Un appel à la fonction PInvoke
> > > > > 'WindowsApplication1!WindowsApplication1.Form1::ShellExecute' a
> > > > > déséquilibré la pile. Cela peut se produire, car la signature
PInvoke
> > > > > managée ne correspond pas à la signature cible non managée.
Vérifiez
> > > > > que la convention d'appel et les paramètres de la signature
PInvoke
> > > > > correspondent à la signature non managée cible.
> > > > >
> > > > > Je ne vois pas trop d'ou sa pourrait provenir...
> > > > >
> > > > > Cordialement,
> > > > >
> > > >
> > > > Vu le message d'erreur tu es en vb.net.
> > > > Tu devrais poser la question dans le groupe idoine
> > > > microsoft.public.fr.dotnet.vb
> > > > Toutefois, AllApi nous dit d'utiliser System.Diagnostics.Process,
comme
> > > > ceci:
> > > > Imports System.Diagnostics
> > > > Public Module modmain
> > > > Sub Main()
> > > > 'The KPD-Team 2001
> > > > 'URL: http://www.allapi.net/dotnet/
> > > > 'E-Mail:
> > > > Dim NewProcess as Process = new Process
> > > > NewProcess.Start("C:MonMP3.mp3")
> > > > End Sub
> > > > End Module
> > > >
> > > > Clive
> > > >
> > > >
> > > >
> > >
> > > Bonjour,
> > >
> > > Je suis bien en Visual Basic 2005 et non en .Net.
> > > C'est bien la première fois que j'ai une telle erreur, sa doit bientôt
> > faire
> > > plusieures heures que j'éssaille de trouver le problème sans résultat
:(
> > > Je cherche encore un peut aujourd'huis, et je vous tien au courant.
> > >
> > > Bonne journée,
> > >
> > > Cordialement,
> > >
> > > Blaster.
> >
> > VB 2005 c'est .Net !
> >
> >
> >
>
> J'ai du mal a comprendre, comment ce fait-il que touts les autres code
(VB)
> que j'ai utiliser on tous tres bien fonctionner ?

Principalement parceque VB.Net est 90% compatible avec VB6 (entre autre il y
a un module de compatibilité fourni exprès).
Donc la plupart des fonctions VB6 existent en VB.Net. Par contre tout ce qui
a trait au système d'exploitation a été remanié et certains appels API
échouent (comme dans ton cas)

As-tu essayé la soluce allapi.net que j'ai trouvé ?

Clive






Oui, merci beaucoup ca fonctionne super !
Je me suis ambrouiller, le VB6 ressemble tellement au .NET. Désoler pour la
confusion. Et merci pour ton aide.

@ bientôt

Blaster.
Avatar
Blaster
"jm" wrote:

"Blaster" wrote in message
news:
>
>
> "Jean-marc" wrote:
>
>> Blaster a écrit :
>>
>> > Bonsoir,
>> >
>> > Je voudrais créer un petit logiciel, mais je reste blocer sur un point,
>> > je
>> > trouve aucun code qui me permet d'ouvrir un fichier Wav, mp3 etc...
>> > avec le
>> > lecteur par défault en cliquant sur un linkLabel ou bouton.. Si
>> > quelqu'un
>> > aurrait une source...
>>
>> Hello,
>>
>> le plus facile et le plus standard est d'utiliser la fonction
>> ShellExecute de l'API Windows.
>> VOici un petit exemple:
>>
>> 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 Command1_Click()
>> Dim r As Long
>>
>> r = ShellExecute(0, "open", "c:gameover.wav", vbNullString,
>> vbNullString, 0)
>>
>> End Sub
>>
>> Et voila :-)
>> Marche aussi pour ouvrir un lien avec le navigateur par défaut, ouvrir
>> tout type de document avec l'application par défaut pour ce type, etc.
>>
>>
>> --
>> Jean-marc
>>
>>
>
> Re bonsoir,
>
> Merci d'avoir répondu aussi vite !
>
> j'ai essailler ce code mais il m'affiche un genre d'erreur, la voici :
>
> Un appel à la fonction PInvoke
> 'WindowsApplication1!WindowsApplication1.Form1::ShellExecute' a
> déséquilibré
> la pile. Cela peut se produire, car la signature PInvoke managée ne
> correspond pas à la signature cible non managée. Vérifiez que la
> convention
> d'appel et les paramètres de la signature PInvoke correspondent à la
> signature non managée cible.
>
> Je ne vois pas trop d'ou sa pourrait provenir...

Hello,
moi non plus je ne vois pas. Jamais vu ça, mais surtout je n'ai jamais vu un
message d'erreur de ce genre la.
Dans quel genre d'environnement obtiens tu ceci?? Pas dans l'IDE de VB6?

--
Jean-marc







Non enfait, j'ai commancer le VB à la sortie de Visual Basic 2005 Express.
Mais j'ais pas fais gaffe qu'il etait fait pour le .NET (Boulet ^^)

@ ++