Comment jouer sur son sur vbs
Résolu
brice-eve
Messages postés
82
Date d'inscription
Statut
Membre
Dernière intervention
-
cs_Le Pivert Messages postés 7904 Date d'inscription Statut Contributeur Dernière intervention -
cs_Le Pivert Messages postés 7904 Date d'inscription Statut Contributeur Dernière intervention -
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 Minecraft switch via la tv ? - Forum Nintendo Switch
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