VB.NET播放WAV实现方法介绍

开发 后端
当我们在进行程序开发的时候,需要对各种类型的声音文件进行操作的时候,应该如何做呢?我们在这里就为大家介绍一下VB.NET播放WAV的相关操作,方便大家了解。

VB.NET编程语言可以说功能是非常强大的。而且其的应用范围也是很广泛。比如对界面的操作,和对声音的操作等等。我们今天将会了解到有关VB.NET播放WAV的相关应用技巧,希望能给大家大带来希望。

Wednesday, September 24 2003 1:24 PM 当一定事件完成时,程序发出特定的信号则可以增加程序的用户界面特性,比如在下载完成或者选择一个命令的时候。使用一个多媒体功能,通过一个vb程序来运行WAV文件是一件轻而易举的事情。然而,系统必须为这一操作而安装一个声卡。

你所需要的API函数称为PlaySound,以下为该函数的声明:

Public Declare Function
 PlaySound Lib "winmm.dll" _  
Alias "PlaySoundA" 
(ByVallpszName As String, _  
ByValhModule As Long, 
ByValdwFlags As Long) _  
As Long  
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.

在这一函数中,第一个变量是名称,包括运行的Wave文件的路径。第二个变量在运行文件时通常不使用,所以你可以将它赋值为zero。最后一个变量包含控制函数如何工作的标记。

为了当前的需要,必须需要两个标记。它们是:

SND_ASYNC (value= 1):以异步方式运行,这意味着当播放声音时函数在运行。

SND_FILENAME (value = &H20000):第一个变量为一个文件名。

所以,以下VB.NET播放WAV代码播放了DingDong.wav文件中的声音:

PlaySound "dingdong.
wav", CLng(0), _  
SND_ASYNC Or SND_FILENAME  
  • 1.
  • 2.
  • 3.

当运行在一个程序中运行音频文件时,还有其他两点值得注意。第一,你必须确保一个特定的音频文件存在,否则会产生错误。这一过程可以用以下一个简单的函数来完成:

Public Function FileExists
(FullFileName) As Boolean  
'' Passed a filename 
(with path) returns  
'' True if the file 
exists, False if not.  
Dim s   s = dir(FullFileName)   If s = "" Then   FileExists = False  Else   FileExists = True  End If   End Function  
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.

第二,VB.NET播放WAV程序必须具有为用户提供关闭声音的选择设置。这一过程可以通过使用一个比如gProgramSoundsEnabled的全局布尔变量来实现。

我的方法是在一个函数中同时处理这些需要,如下所示。(以下代码假设音频文件已经存放在程序文件中)

Private Sub PlaySoundX
(filename As String)  
'' If sound is enabled 
and filename exists,  
'' play the specified sound.   filename = App.path & 
"" & filename  
If FileExists(filename) 
And gProgramSoundsEnabled Then  
PlaySound filename, CLng(0), 
SND_ASYNC Or SND_FILENAME  
End If   End Sub  
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.

正确使用这些函数,程序就可以播放任何Wave文件,如下所示:

PlaySoundX "DingDong.wav"  
  • 1.

VB.NET播放WAV的其他方法包括窗体上的多媒体控制。当你不需要这些控制特性时,以上讲述的技术已经足够,并且很容易掌握。

【编辑推荐】

  1. VB.NET嵌入文件操作技巧分享
  2. 深入分析VB.NET FieldOffset特性
  3. VB.NET资源文件应用经验总结
  4. VB.NET Dllimport特性内容概述
  5. 简单实现VB.NET打开Notes数据库
责任编辑:曹凯 来源: zdnet.com.cn
相关推荐

2010-01-15 18:12:28

VB.NET超链接

2010-01-07 16:51:56

VB.NET窗体钩子

2010-01-15 10:56:50

VB.NET继承实现多

2010-01-07 15:25:11

VB.NET数组

2010-01-22 10:41:33

VB.NET声明结构

2009-11-10 12:42:47

VB.NET Prin

2010-01-12 10:40:58

VB.NET数据库压缩

2010-01-21 13:34:56

VB.NET删除文件夹

2010-01-15 15:26:46

VB.NET自定义类型

2010-01-21 17:58:40

VB.NET List

2010-01-08 13:35:35

VB.NET写Log方

2010-01-08 18:31:45

VB.NET历史菜单

2010-01-07 15:49:10

VB.NET DoLoop

2010-01-19 10:03:35

VB.NET Labe

2010-01-14 17:52:54

VB.NET显示系统信

2009-10-28 09:55:29

VB.NET MyCl

2010-01-20 17:47:54

VB.NET注释

2010-01-19 18:37:24

VB.NET内存占用

2010-01-07 18:17:00

VB.NET连接SAP

2010-01-21 17:48:25

VB.NET Sing
点赞
收藏

51CTO技术栈公众号