标题: 怎么用批处理播放声音文件啊百度都搜不到
[打印本页]
作者: qq43142691
时间: 2007-6-16 12:28
标题: 怎么用批处理播放声音文件啊百度都搜不到
就是用命令调用声音文件.
或者VBS也可以...谁能告诉我啊.
作者: junyee
时间: 2007-6-16 13:18
用BAT当播放器用啊???
作者: yjq635
时间: 2007-6-16 16:48
这个是我以前找到的,具体哪个网站忘了,经测试是可以的!
如何在脚本播放一个声音?
问:
嗨,Scripting Guy!我有一个脚本可通过弹出消息框来警告用户发生了问题。有没有办法在弹出消息框的同时播放声音呢?
-- TL
答:
嗨,TL。你们这么做是故意的,不是吗?你们就爱问一些没有明确答案的问题。这次也是这样:您可以搜遍 VBScript 和 WSH 文档,但是您无法找到任何方法可让您通过脚本直接播放声音,即便只是“吱吱”声也办不到。或者,在这种情况下可能是“嘀嘀”声。
因此,必须调用另一个实用程序,以便播放声音。要是声音文件采用 .WAV 格式,最好使用 Windows 录音机。对于这一点,至少有两个理由。首先,录音机较为小巧,可以非常快地进行加载;Media Player 要强大得多,但是对于只是播放“嘀嘀”声,太大材小用了。其次,通过传递适当的命令行参数,可以隐式运行录音机;因此,您(或用户)将听到声音,但不会在屏幕上看到录音机。
以下脚本可以播放 Notify.wav(在 Windows\Media 文件夹下找到的一个标准的操作系统声音文件):
strSoundFile = "C:\Windows\Media\Notify.wav"
Set objShell = CreateObject("Wscript.Shell")
strCommand = "sndrec32 /play /close " & chr(34) & strSoundFile & chr(34)
objShell.Run strCommand, 0, True
该脚本的前两行非常简单。在第一行中,我们将该文件路径指派给了 strSoundFile 变量;在第二行中,我们创建了 Wscript Shell 对象(将用于实际运行录音机的对象)的一个实例。
第三行稍微麻烦一点。为了从命令提示符运行录音机,需要键入该命令:
sndrec32 /play /close "C:\Windows\Media\Notify.wav"
前两个命令行参数告诉录音机播放该文件,然后自动终止;当然,第三个参数就是所要播放的文件的名称。在该例中,不需要对文件路径加双引号;只有当路径名中含有空格时,才需要加引号。我们预先加了引号,以便为您提供模板,供您在播放路径名中确实含有空格的声音文件时使用。因此:
sndrec32 /play /close "C:\Windows\Media\Windows XP Error.wav"
为了对该文件路径加双引号,我们使用了 Chr(34) 命令(可在字符串中插入双引号)。因此,这行代码将 sndrec32 /play /close、前双引号 (“) 文件 C:\Windows\Media\Notify.wav 以及后双引号 (”) 串在了一起:
strCommand = "sndrec32 /play /close " & chr(34) & strSoundFile & chr(34)
最后,在第四行中使用了 Run 方法,传递刚才构建的命令字符串。参数 0 可以让录音机在隐藏窗口中运行;参数 True 告诉该脚本等到声音播放结束后,再重新进行播放。
那么,至于在弹出消息框的同时播放声音,您会发现这几乎不可能;这是因为,录音机需要一两秒的时间来加载并开始播放。最好做两件事。首先,在调用录音机时,使用参数 False;这将告诉该脚本启动录音机并无需等到声音播放结束后就可以继续播放。
其次,使用 Wscript.Sleep 命令将脚本暂停大约一秒钟;从而让录音机有时间进行加载,幸运的话,大约会在弹出消息框时开始播放该声音。能否恰好在弹出消息框的同时播放声音呢?一般不会。但至少可以接近于同时进行。
这里有一个示例脚本也可以大约在弹出消息框的同时播放声音:
strSoundFile = "C:\windows\Media\Notify.wav"
Set objShell = CreateObject("Wscript.Shell")
strCommand = "sndrec32 /play /close " & chr(34) & strSoundFile & chr(34)
objShell.Run strCommand, 0, False
Wscript.Sleep 1000
Msgbox "A problem has occurred."
责任编辑:孤红雪
作者: eech
时间: 2007-6-17 17:25
我机子改成100毫秒正好同步,嘿嘿
作者: 3742668
时间: 2007-6-17 18:17
用bat的话可以尝试直接start 声音文件,会自动用相应的播放器来播放。
用vbs的话则有多种方案:
一,使用WMPlayer.OCX
1.1使用URL:
Set oPlayer = CreateObject("WMPlayer.OCX")
oPlayer.URL = "D:\音乐\歌曲\王心凌\彩虹的微笑.mp3"
oPlayer.controls.play
Do
WScript.Sleep 100
Loop Until oPlayer.openState <> 12
WScript.Sleep oPlayer.currentMedia.duration * 1000
1.2使用Playlist:
Set oPlayer = CreateObject("WMPlayer.OCX")
oPlayer.currentPlaylist.appendItem oPlayer.newMedia("D:\音乐\歌曲\王心凌\彩虹的微笑.mp3")
oPlayer.controls.play
Do
WScript.Sleep 100
Loop Until oPlayer.openState <> 12
WScript.Sleep oPlayer.currentMedia.duration * 1000
二.使用SAPI.SpFileStream
Set oVoice = CreateObject("SAPI.SpVoice")
Set oFile = CreateObject("SAPI.SpFileStream.1")
oFile.Open "c:\Windows\Media\Ding.wav"
oVoice.Speakstream oFile,1 '注意这里的参数1加与不加的效果
Wscript.Echo "出错了..."
Set oVoice = Nothing
Set oFile = Nothing
注意:此方案只能播放WAV格式的声音。
另外,使用某些常用第三方软件提供的可被VBS调用的组件也可以实现。
作者: HAT
时间: 2007-6-17 21:25
//用bat的话可以尝试直接start 声音文件,会自动用相应的播放器来播放。
我在XP SP2下用start试了一下,不行。只是弹出一个msdos窗口,并没有播放声音。
3742668斑竹,何解啊?
@echo off
start "C:\WINDOWS\Media\Windows XP Startup.wav"
作者: Vampire
时间: 2007-6-18 00:00
可能是关联有问题,你查看看关联:cmd /k for /f "tokens=2 delims==" %i in ('assoc .wav') do ftype %i
作者: lxmxn
时间: 2007-6-18 01:28
Quote: |
Originally posted by HAT at 2007-6-17 21:25:
//用bat的话可以尝试直接start 声音文件,会自动用相应的播放器来播放。
我在XP SP2下用start试了一下,不行。只是弹出一个msdos窗口,并没有播放声音 ... |
|
@echo off
start "" "C:\WINDOWS\Media\Windows XP Startup.wav"
作者: qq43142691
时间: 2007-7-31 05:40
set mp3=c:\opera.mp3
copy /y "C:\Program Files\Windows Media Player\wmplayer.exe" %windir%\system32\
start /min wmplayer "%mp3%"
作者: vive666888
时间: 2007-7-31 16:16
哈,学习了,谢谢各位高人
作者: qq43142691
时间: 2007-8-1 06:28
Set oPlayer = CreateObject("WMPlayer.OCX")
oPlayer.URL = "d:\有一种爱叫做放手.mp3"
oPlayer.controls.play
Do
WScript.Sleep 100
Loop Until oPlayer.openState <> 12
WScript.Sleep oPlayer.currentMedia.duration * 1000
作者: ngdao
时间: 2007-8-2 22:57
用mplayer可以在DOS下播放音乐
mplayer.exe "C:\Documents and Settings\Administrator\My Documents\My Music\朋友.mp3"
我的网盘中有这个软件
http//ngd.ys168.com
作者: tophu0041463
时间: 2010-1-5 07:45
做记号