C# 控制蜂鸣器发声

  偶正做一项目中需要报警功能,但通常怕客户电脑上没有声卡或音响,所以根据指定声音声卡报警的同时让蜂鸣器也发出声音.下面是完整的代码,测试通过(个人习惯,通常不喜欢把声明和使用放在一个类中).

 声明:

  public   class  APIs
    
{
        [DllImport(
"Kernel32.dll")]
        
public static extern bool Beep(int frequency, int duration);
    }

 实现:

/// 
        
/// 蜂鸣器发声 (非零)表示成功,否则返回零。会设置GetLastError
        
/// 

        
/// 声音频率(从37Hz到32767Hz)。在windows95中忽略
        
/// 声音的持续时间,以毫秒为单位。如为-1,表示一直播放声音,直到再次调用该函数为止。

         public   static   bool  Beep( int  iFrequency,  int  iDuration)
        
{
            
return APIs.Beep(iFrequency, iDuration);
        }

调用(我随便找了个方法测试,其实就是个按钮事件):

private   void  btnCancel_Click( object  sender, EventArgs e)
        
{
            
if (common.Beep(30005000))
            
{
                MessageBox.Show(
"成功");
            }

            
else
            
{
                MessageBox.Show(
"失败");
            }

            
//this.Close();
        }

你可能感兴趣的:(Microsoft,.NET(C#)桌面软件开发)