使扬声器发出警告音

Winnt以上直接使用API
BOOL Beep(

    DWORD dwFreq, // sound frequency, in hertz
    DWORD dwDuration  // sound duration, in milliseconds
   );

函數
void PlayWarningSound(int freq,int delay)
{
    const int scale = 1193180;
    WORD freqTemp = (WORD)(scale/freq);

    asm
    {
        in al,61h;
        or al,3;
        out 61h,al;
        mov al,0xb6;
        out 43h,al;
        movax,freqTemp;
        out 42h,al;
        mov al,ah;
        out 42h,al;
    }
    Sleep ( delay ) ;
    asm 
    {
        in al,0x61;
        and al,0xfc;
        out 0x61,al;
    }
}

//-------------------------------------
函數參數 freq:聲音頻率
        delay:發聲時間

阅读更多
版权声明:原创文章转载时请附上原文链接 https://blog.csdn.net/aniven/article/details/556233
文章标签: delay api
个人分类: C++/BCB开发
上一篇扫描全部磁盘号和卷标
下一篇判断操作系统是否为NT
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭