返回列表 回复 发帖
楼主貌似是管理员。 有几点我可以提一下吗? Windows NT 系统。在没有声音文件的时间 是可以通过脚本直接播放声音,只是声音不是很好听,比如下面用AU3制作的一个 <两子老虎>的音乐文件。就一个脚本,运行就可以听到歌曲。


Func frequency($scale,$melody="C")
If $scale="0" Then Return 0
If $melody="C" Then
Switch $scale
Case "1"
  Return 264
Case "2"
  Return 297
Case "3"
  Return 330
Case "4"
  Return 352
Case "5"
  Return 396
Case "6"
  Return 440
Case "7"
  Return 495
EndSwitch
ElseIf $melody="D" Then
Switch $scale
Case "1"
  Return 297
Case "2"
  Return 334
Case "3"
  Return 371
Case "4"
  Return 396
Case "5"
  Return 446
Case "6"
  Return 495
Case "7"
  Return 557
EndSwitch
EndIf
SetError(1)
EndFunc

Func book($book,$speed=500,$melody="c")
For $s=1 To StringLen($book)
$frequency=frequency(StringMid($book,$s,1),$melody)
If @error Then ContinueLoop
$Duration=$speed
Switch StringMid($book,$s+1,1)
Case "H"
  $frequency=frequency(StringMid($book,$s,1),$melody)*2
Case "L"
  $frequency=frequency(StringMid($book,$s,1),$melody)/2
Case "Q"
  $Duration=$speed/2
Case "S"
  $Duration=$speed*2
EndSwitch
If $frequency=0 Then
Sleep($speed)
Else
Beep($frequency,$Duration)
EndIf
Next
EndFunc

book("12311231345034505Q6Q5Q4Q315Q6Q5Q4Q3126L1026L1",300,"D")




还有  当弹出消息框的同时播放声音 也是可以实现, 用MSGBOS弹出消息框的之前先播放文件,用APD来暂停播放,当消息框被激活时,播放。所以这也可以实现。

Windows的系统都安装有 Windows Media Player  所以。想要实现在不打开播放器的情况下,播放指定的音频文件,是直接用Windows Media Player  自带的命令可以实现。
例下:
start "C:\Program Files\Windows Media Player\wmplayer.exe" /min "C:\1.mp3"

用start打开 Windows Media Player 用min参数 来播放 C盘下的1.mp3文件。 而且还是隐藏的。

[ 本帖最后由 jneyxwry 于 2007-12-19 00:12 编辑 ]
+10

评分记录

  • SzAngel

谢谢楼上的指出。
返回列表