C# 用API函数调入声音文件

本文介绍了一种使用C#在Windows环境下播放音频文件的方法。通过调用winmm.dll中的PlaySound函数,并定义PlaySoundFlags枚举来控制播放行为,如同步或异步播放等。

先添加命名空间。
using System.Runtime.InteropServices
调用时候用 Sound.Play(文件路径);
 
文件路径也可以把声音文件放在DEBUG目录下,然后
string sound=System.Windows.Forms.Application.StartupPath +@"sound.wav"; 
调用 Sound.Play(sound);

internal   class   Helpers     
{   
    [Flags]   
    
public   enum   PlaySoundFlags   :   int     
    {   
        SND_SYNC   
=   0x0000,     
        SND_ASYNC   
=   0x0001,     
        SND_NODEFAULT   
=   0x0002,     
        SND_MEMORY   
=   0x0004,     
        SND_LOOP   
=   0x0008,    
        SND_NOSTOP   
=   0x0010,     
        SND_NOWAIT   
=   0x00002000,   
        SND_ALIAS   
=   0x00010000,   
        SND_ALIAS_ID   
=   0x00110000,   
        SND_FILENAME   
=   0x00020000,   
        SND_RESOURCE   
=   0x00040004     
    }   
    
    [DllImport(
"winmm.dll")]   
    
public   static   extern   bool   PlaySound(   string   szSound,   IntPtr   hMod,   PlaySoundFlags   flags   );   
}   
public   class   Sound     
    {   
        
public   static   void   Play(   string   strFileName   )   
    {   
    Helpers.PlaySound(   strFileName,   IntPtr.Zero,   Helpers.PlaySoundFlags.SND_FILENAME   
|  Helpers.PlaySoundFlags.SND_ASYNC   );   
    }   
}   

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值