请教:如何用VB实现使PC的喇叭发声,用beep我试过了,只能使音箱发声

luckyhorse 2002-06-08 11:55:08
请教:如何用VB实现使PC的喇叭发声,用beep我试过了,只能使音箱发声
...全文
834 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
luckyhorse 2002-06-12
  • 打赏
  • 举报
回复
limengchen(lmc),是不是就只能调用第三方控件了?
limengchen 2002-06-12
  • 打赏
  • 举报
回复
你是说主机内的蜂鸣器吗?VB中好像不行。
luckyhorse 2002-06-12
  • 打赏
  • 举报
回复
只能用我下载的控件了:(大家如有什么好的方法,请告之,是否成功,都谢了:)
luckyhorse 2002-06-12
  • 打赏
  • 举报
回复
谢谢各位的,我都试过了,不行,还是音箱发声
年糕 2002-06-12
  • 打赏
  • 举报
回复
【VB声明】
Private Declare Function Beep Lib "kernel32" Alias "Beep" (ByVal dwFreq As Long, ByVal dwDuration As Long) As Long

【说明】
用于生成简单的声音

【返回值】
Long,TRUE(非零)表示成功,否则返回零。会设置GetLastError

【备注】
在windows95中,这个函数简单的播放默认系统响铃

【参数表】
dwFreq --------- Long,声音频率(从37Hz到32767Hz)。在windows95中忽略

dwDuration ----- Long,声音的持续时间,以毫秒为单位。如为-1,表示一直播放声音,直到再次调用该函数为止。在windows95中会被忽略
年糕 2002-06-12
  • 打赏
  • 举报
回复
在windows95中,这个函数简单的播放默认系统响铃
dwFreq --------- Long,声音频率(从37Hz到32767Hz)。在windows95中忽略

dwDuration ----- Long,声音的持续时间,以毫秒为单位。如为-1,表示一直播放声音,直到再次调用该函数为止。在windows95中会被忽略
vicon 2002-06-12
  • 打赏
  • 举报
回复
Option Explicit

Private Declare Function Beep Lib "kernel32" (ByVal dwFreq As Long, ByVal dwDuration As Long) As Long
Private Sub Form_Activate()
'KPD-Team 1999
'URL: http://www.allapi.net/
'E-Mail: KPDTeam@Allapi.net
Dim Cnt As Long
For Cnt = 0 To 5000 Step 10
'play a tone of 'Cnt' hertz, for 50 milliseconds
Beep Cnt, 50
Me.Caption = Cnt
DoEvents
Next Cnt
End Sub

'随便抄的,看看有什么效果,我的电脑没有音箱。
年糕 2002-06-12
  • 打赏
  • 举报
回复
Private Declare Function Beep Lib "kernel32" (ByVal dwFreq As Long, ByVal dwDuration As Long) As Long
Private Sub Command1_Click()
Dim retval As Long
retval = Beep(800, 2000)
End Sub
luckyhorse 2002-06-12
  • 打赏
  • 举报
回复
非常感谢bestofbest(咖啡),这个我已经试过了,还是音箱发声:(。
luckyhorse 2002-06-12
  • 打赏
  • 举报
回复
我在网上下载了一个“Tyche 扬声器控件”,倒是可以实现PC喇叭出声了,在VB下运行正常,但在编译过程总是出错,是这个控件本身的问题,我不太想用第三方控件,毕竟总是受限,还是想找一个API,谢谢各位了:)
bestofbest 2002-06-12
  • 打赏
  • 举报
回复
Private Declare Function Beep Lib "kernel32" (ByVal dwFreq As Long, ByVal dwDuration As Long) As Long

我查到的就是这个了,不知道对不对。希望对你有帮助
bestofbest 2002-06-12
  • 打赏
  • 举报
回复
此API可能与SOUND这个此有关
bestofbest 2002-06-12
  • 打赏
  • 举报
回复
我觉得应该可以
好象有一种API函数可以让电脑发出指定频率的声音
我想发出声音的应该不是音箱响吧。
例子就是那个驱赶蚊子的程序,发出指定频率的声音驱赶雌蚊子
程序说明里面没说要打开音箱。

抱歉,我不记得是哪个API了,我现在很忙,你可以查查API方面的资料
实在找不到此API的话,我可以帮你看看
祝你好运!
fontz 2002-06-11
  • 打赏
  • 举报
回复
API可以实现。
luckyhorse 2002-06-11
  • 打赏
  • 举报
回复
beep是不行的,是不是用VB直接调用与调用API函数都不能实现,大概只能调用第三方控件了:(
lifisher 2002-06-09
  • 打赏
  • 举报
回复
在NT内核的OS中才可以用此函数
welong 2002-06-09
  • 打赏
  • 举报
回复
用VC做dll行吗?
DarkHorse8210 2002-06-09
  • 打赏
  • 举报
回复
此函数在NT内核的操作系统中才能使PC喇叭发声,在98种不行。
xxlroad 2002-06-09
  • 打赏
  • 举报
回复
Private Sub Command1_Click()
Dim i As Long '试试看
For i = 0 To 10 ^ 4
Beep
Next
End Sub
luckyhorse 2002-06-09
  • 打赏
  • 举报
回复
你试过吗?不是应该吧?我是说让PC机内部的喇叭发声,而不是声卡接音箱发声,PC喇叭接好了:)
加载更多回复(1)

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧