Comment jouer sur son sur vbs
Résolu
brice-eve
Messages postés
109
Statut
Membre
-
cs_Le Pivert Messages postés 8437 Statut Contributeur -
cs_Le Pivert Messages postés 8437 Statut Contributeur -
Bonjour,
depuis peu je me suis mis a développer un programme en .vbs
sur ce programme je souhaite jouer une musique qui se lancera des que le programme ce lance sauf que ...
j'ai chercher partout sur internet g troué quelques codes comme :
mais ils ne marchent pas.
plus tard g appris que sndrec32 n'existais plus a partir de windows vista donc g encore chercher un autre code pour jouer du son mais impossible de trouver.
merci d'avance pour votre précieuse aide
depuis peu je me suis mis a développer un programme en .vbs
sur ce programme je souhaite jouer une musique qui se lancera des que le programme ce lance sauf que ...
j'ai chercher partout sur internet g troué quelques codes comme :
strSoundFile = "C:\Users\fichiers_test\"
Set objShell = CreateObject("Wscript.Shell")
strCommand = "sndrec32 /play /close " & chr(34) & strSoundFile & chr(34)
objShell.Run strCommand, 0, True
mais ils ne marchent pas.
plus tard g appris que sndrec32 n'existais plus a partir de windows vista donc g encore chercher un autre code pour jouer du son mais impossible de trouver.
merci d'avance pour votre précieuse aide
A voir également:
- Comment jouer sur son sur vbs
- Jouer a pokemon sur android - Guide
- Vbs windows - Accueil - Optimisation
- Comment jouer a star citizen - Guide
- Comment jouer à minecraft à deux sur la même switch - Forum Jeux vidéo
- Comment jouer à deux sur ppsspp ✓ - Forum PSP
3 réponses
Ca fonctionnait sous Vista mais plus maintenant
Personnellement, j'utiliserais un lecteur de musique externe (en ligne de comande) comme ffplay ou mplayer
Personnellement, j'utiliserais un lecteur de musique externe (en ligne de comande) comme ffplay ou mplayer
Bonjour,
Voir ce programme:
https://codes-sources.commentcamarche.net/source/101004-ecouter-dj-buzz-radio-avec-djbuzzradio-vbs
en changeant cette ligne et en mettant le chemin du fichier audio
je l'ai fait cela fonctionne très bien pour mp3, wav et wma
Voir ce programme:
https://codes-sources.commentcamarche.net/source/101004-ecouter-dj-buzz-radio-avec-djbuzzradio-vbs
en changeant cette ligne et en mettant le chemin du fichier audio
Call Play(DJBuzzRadio)
Call Play (Chemin audio)
je l'ai fait cela fonctionne très bien pour mp3, wav et wma
rebonjour allors j'ai testé votre programe mais il ne foncionne pas mais j'ai réusi a trouvé la solution tout seul :
voila merci pour votre aide
Dim oPlayer
Set oPlayer = CreateObject("WMPlayer.OCX")
oPlayer.URL = "chemain d'acces"
oPlayer.controls.play
While oPlayer.playState <> 1 ' 1 = Stopped
WScript.Sleep 100
Wend
oPlayer.close
voila merci pour votre aide
Le programme que j'ai indiqué fonctionne très bien.
La preuve, voici le programme modifié par mes soins qui permet de choisir un fichier audio et de l’arrêter à la demande:
mais j'ai réusi a trouvé la solution tout seul :
on s'apercoit que ton code ressemble étrangement au
Sub Play(URL)
La preuve, voici le programme modifié par mes soins qui permet de choisir un fichier audio et de l’arrêter à la demande:
mais j'ai réusi a trouvé la solution tout seul :
on s'apercoit que ton code ressemble étrangement au
Sub Play(URL)
Dim Chemin
Call AskQuestion()
'*****************************************************************************
Sub Play(URL)
Dim Sound
Set Sound = CreateObject("WMPlayer.OCX")
Sound.URL = URL
Sound.settings.volume = 100
Sound.Controls.play
do while Sound.currentmedia.duration = 0
wscript.sleep 100
loop
wscript.sleep (int(Sound.currentmedia.duration)+1)*1000
End Sub
Sub AskQuestion()
Dim Question,MsgFR
MsgFR = "Voulez-vous ouvrir un fichier audio?" & vbcr & "Oui = Pour écouter" & vbcr & "Non = Pour arrêter" & vbcr & String(50,"*")
Question = MsgBox(MsgFR,vbYesNO+vbQuestion+vbSystemModal,Title)
If Question = VbYes Then
Call chercher()'chercher le fichier audio
Call Play (Chemin)'jouer
End If
If Question = VbYes Then
MsgBox "Il y a une autre instance en cours d'exécution !"
WScript.Quit()
End If
If Question = VbNo Then
Call Kill("wscript.exe")
End If
If Question = VbNo Then
Call Kill("wscript.exe")
End If
End Sub
'*****************************************************************************
'Fonction pour ajouter les doubles quotes dans une variable
Function DblQuote(Str)
DblQuote = Chr(34) & Str & Chr(34)
End Function
'******************************************************************************
Function CommandLineLike(ProcessPath)
ProcessPath = Replace(ProcessPath, "\", "\\")
CommandLineLike = "'%" & ProcessPath & "%'"
End Function
'******************************************************************************
Sub Kill(MyProcess)
Dim Titre,colItems,objItem,Processus,Question
Titre = " Processus "& DblQuote(MyProcess) &" en cours d'exécution "
Set colItems = GetObject("winmgmts:").ExecQuery("Select * from Win32_Process " _
& "Where Name like '%"& MyProcess &"%' AND commandline like " & CommandLineLike(WScript.ScriptFullName) & "",,48)
For Each objItem in colItems
objItem.Terminate(0)' Tuer ce processus
Next
End Sub
'******************************************************************************
Sub chercher()
sIniDir = "C:\Windows\*"
sFilter = "Fichier MP3 (*.mp3)|*mp3|Fichier Wave(*.wav)|*wav|Fichier WMA(*.wma)|*wma|"
sTitle = "GetFileDlg by omen999 2014 - http://omen999.developpez.com"
rep = GetFileDlgEx(Replace(sIniDir,"\","\\"),sFilter,sTitle)
Chemin=rep & vbcrlf & Len(rep)
Chemin= left(Chemin , len(Chemin)-2)
'Chemin=InputBox("Copiez pour mettre le chemin dans le presse-papier", "Chercher chemin fichier", Chemin)
End Sub
Function GetFileDlgEx(sIniDir,sFilter,sTitle)
Set oDlg = CreateObject("WScript.Shell").Exec("mshta.exe ""about:<object id=d classid=clsid:3050f4e1-98b5-11cf-bb82-00aa00bdce0b></object><script>moveTo(0,-9999);eval(new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(0).Read("&Len(sIniDir)+Len(sFilter)+Len(sTitle)+41&"));function window.onload(){var p=/[^\0]*/;new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(1).Write(p.exec(d.object.openfiledlg(iniDir,null,filter,title)));close();}</script><hta:application showintaskbar=no />""")
oDlg.StdIn.Write "var iniDir='" & sIniDir & "';var filter='" & sFilter & "';var title='" & sTitle & "';"
GetFileDlgEx = oDlg.StdOut.ReadAll
End Function
Etrange, la balise code n'est pas effective quand on affiche le poste sur Chrome Android ; Sous Windows, pas de soucis.
EDIT : Pas d'erreur dans le code, c'était un problème de copier/coller, désolé :)
Par contre, pour le répertoire d'initialisation, il faut éviter autant que faire se peut de mettre des chemin en dur. Ici C:\Windows. perso, ce répertoire n'existe pas ^^ Mieux vaut utiliser la boite de dialogue invitant l'utilisateur de choisir son répertoire.
EDIT : Pas d'erreur dans le code, c'était un problème de copier/coller, désolé :)
Par contre, pour le répertoire d'initialisation, il faut éviter autant que faire se peut de mettre des chemin en dur. Ici C:\Windows. perso, ce répertoire n'existe pas ^^ Mieux vaut utiliser la boite de dialogue invitant l'utilisateur de choisir son répertoire.
Bonjour PATATE
Mieux vaut utiliser la boite de dialogue invitant l'utilisateur de choisir son répertoire.
C'est ce que fait le code, il ouvre une openfiledialog. J'ai mis ce chemin pour le début de la recherche. Tu peux l'enlever et tu seras sur le dernier fichier ouvert. Sinon tu le personnalises. Nous sommes sur un forum de développeur, donc capable de l'adapter, ce forum est fait pour cela, n'est-il pas?
cdlt
Bon WE
@+ Le Pivert
Mieux vaut utiliser la boite de dialogue invitant l'utilisateur de choisir son répertoire.
C'est ce que fait le code, il ouvre une openfiledialog. J'ai mis ce chemin pour le début de la recherche. Tu peux l'enlever et tu seras sur le dernier fichier ouvert. Sinon tu le personnalises. Nous sommes sur un forum de développeur, donc capable de l'adapter, ce forum est fait pour cela, n'est-il pas?
cdlt
Bon WE
@+ Le Pivert