首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

vc PC蜂鸣器,

2012-02-03 
求助vc PC蜂鸣器,急VC中如何控制PC机报警,是开机自检那种报警,不是在耳机里听到的那种我用MessageBeep只能

求助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;} 

热点排行