读书人

vc PC蜂鸣器

发布时间: 2012-02-03 22:02:47 作者: rapoo

求助vc PC蜂鸣器,急
VC中如何控制PC机报警,是开机自检那种报警,不是在耳机里听到的那种
我用MessageBeep只能在耳机里听到声音,
用Beep好像没什么反应
请知道的大侠帮帮忙,很急...

[解决办法]
Beep 是可以用的, 我在我机器上试过了, 我机器上没有音箱的
我怀疑你的机器上没有蜂鸣器
换一台机器试试
[解决办法]
// Beep的话,有声卡就通过声卡,不通过PC喇叭了。
// 还有,代码怎么写的?
[解决办法]

C/C++ code
BOOL BeepAsm(  DWORD dwFreq,      // sound frequency, in hertz  DWORD dwDuration)   // sound duration, in milliseconds{  BOOL bRet;  __asm  {      //1 汇编调用Kernel32.dll Beep函数    MOV EAX, dwDuration;     PUSH EAX; //Duration of the sound, in milliseconds.    MOV EAX, dwFreq    PUSH EAX; //Frequency of the sound, in hertz.    MOV EAX, 0X7C837AA7; //kernel32 + beep 可能不同的系统会有变化    CALL EAX  //EAX 保存返回值    MOV bRet, EAX } return bRet;}BOOL BeepEx(  DWORD dwFreq,      // sound frequency, in hertz  DWORD dwDuration)   // sound duration, in milliseconds{  BOOL bRet = 0;  HMODULE hKernel32 = GetModuleHandle(_T("kernel32.dll"));  if(hKernel32)  {    BOOL (WINAPI* BeepFun)(DWORD,DWORD)      = (BOOL (WINAPI *)(DWORD,DWORD))GetProcAddress(hKernel32, "Beep");    if(BeepFun)    {      bRet = BeepFun(dwFreq, dwDuration);    }  }  return bRet;} 

读书人网 >VC/MFC

热点推荐