(转)C# 控制蜂鸣器发声


  原文地址:http://blog.csdn.net/tsinfeng/article/details/6201918

     

在C#中可以通过以下四种方式来实现蜂鸣或者报警,播放声音之类的功能.XP下对蜂鸣有用,win7下请接上扬声器.

1). Beep的报警实现

[c-sharp] view plain copy

    // 添加引用  
       using System.Runtime.InteropServices;  
       
       [DllImport("user32.dll")]  
       public static extern int MessageBeep(uint uType);  
       uint beepI = 0x00000030;  
       
        //发出不同类型的声音的参数如下:  
        //Ok = 0x00000000,  
        //Error = 0x00000010,  
        //Question = 0x00000020,  
        //Warning = 0x00000030,  
        //Information = 0x00000040  
       
        // 然后在程序中调用  
        MessageBeep(beepI);  

2) 调用Microsoft.ViualBase中的Beep():
1.先引入命名空间:using Microsoft.VisualBasic;
2.调用:Interaction.Beep();
在编译时注意要引用Microsoft.VisualBasic.dll程序集,否则编译不能通过。
另外,如果是Console应用,可以用Console.WriteLine(”/a”);来代替Beep()。

3) 通过主板蜂鸣器发出蜂鸣

[c-sharp] view plain copy

    [DllImport("kernel32.dll", EntryPoint = "Beep")]  
    // 第一个参数是指频率的高低,越大越高,第二个参数是指响的时间多长  
    public static extern int Beep(  
    int dwFreq,  
    int dwDuration  
    );  

 

4) 调用PlaySound(string pszSound,int hmod,int fdwSound)来播放声音

[c-sharp] view plain copy

    using System.Runtime.InteropServices;  
    然后声明:  
    [DllImport("winmm.dll")]  
    public static extern bool PlaySound(String Filename, int Mod, int Flags);  
    播放:  
    PlaySound(@"e:/Music/login.wav", 0, 1);      //把1替换成9,可连续播放  

 

参考文章:

http://www.cnblogs.com/MichaelCrane/p/3969884.html

http://blog.csdn.net/minsenwu/article/details/43563421

http://www.cnblogs.com/JuneZhang/archive/2014/04/28/3696594.html


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM