VB程序如何实现拨打电话?

sqhcmj 2003-09-06 08:26:01
我记的以前可以通过MODEM用程序发送命令码实现拨打电话,只是忘了命令的格式,还请各位高手指教一二。
...全文
344 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
pigpag 2003-10-04
  • 打赏
  • 举报
回复
Open "Com1"方法行不行呢?
sqhcmj 2003-09-25
  • 打赏
  • 举报
回复
俺的代码是这样的噢:
MSCOMM1.COMMPORT=3
MSCOMM1.PORTOPEN=TRUE
IF MSCOMM1.PORTOPEN=TRUE THEN
MSCOMM1.OUTPUT ="ATDT " & "1300379" & VBCR
'MSCOMM1.OUTPUT ="ATDT " & "1300379;" & VBCR
'MSCOMM1.OUTPUT ="ATDT" & "1300379;" & VBCR
END IF
一拨打就蓝屏,我苦噢,我是在笔记本上试的,应该没关系的吧?
sqhcmj 2003-09-25
  • 打赏
  • 举报
回复
http://www.vb-helper.com/HowTo/howto_dial_modem.zip我很早已经下载过了,但是我一拨打就出现蓝屏,然后死机。我自己用ATDT命令测试也是如此,不知道是什么原因,但是WINDOWS内置的电话拨打程序可以拨打却会弹出一个对话框,在应用软件中这个对话框我不需要。望高手门不吝赐教!特别是写过该程序的同志们!
sqhcmj 2003-09-25
  • 打赏
  • 举报
回复
用API函数tapiRequestMakeCall拨打电话的时候会弹出一个对话框,而我需要在拨打电话的时候如果正常的话不给出任何提示。并且我的程序是让用户自己选择MODEM的(考虑到有可能会出现两张MODEM),不知道如何实现?
imur 2003-09-15
  • 打赏
  • 举报
回复
学习
Lobbyfish 2003-09-12
  • 打赏
  • 举报
回复
Option Explicit
Private Declare Function tapiRequestMakeCall& Lib "TAPI32.DLL" (ByVal DestAddress$, ByVal AppName$, ByVal CalledParty$, ByVal Comment$)
Public Sub Dial(Number As String, Name As String)
Dim lRES As Long
If Trim(Number) = "" Then
Exit Sub
End If
If MsgBox("About to call" & Trim(Name) & "at phone number" & Trim(Number) & vbCrLf & "Do it?") - vbYesNo = vbYes Then
lRES = tapiRequestMakeCall(Trim(Number), App.Title, Trim(Name), "")
Debug.Print Now; "Call->tapiRequestMakeCall Result code="; lRES; ""
End Sub
ww94307 2003-09-12
  • 打赏
  • 举报
回复
用mscomm控件。
接入电话线打开modem串开用AT指令即可。
pigpag 2003-09-12
  • 打赏
  • 举报
回复
Repeat:
直接用Open语句打开Com好像就可以了。

你也可以参照一下这个:
http://www.vb-helper.com/HowTo/howto_dial_modem.zip
planetike 2003-09-10
  • 打赏
  • 举报
回复
http://www.codesky.net/show.asp?id=1015
hisi 2003-09-08
  • 打赏
  • 举报
回复
ufozq77 2003-09-07
  • 打赏
  • 举报
回复
Option Explicit

Private Declare Function tapiRequestMakeCall& Lib "TAPI32.DLL" (ByVal DestAddress$, ByVal AppName$, ByVal CalledParty$, ByVal Comment$)
Private Const TAPIERR_NOREQUESTRECIPIENT = -2&
Private Const TAPIERR_REQUESTQUEUEFULL = -3&
Private Const TAPIERR_INVALDESTADDRESS = -4&

Private Sub Form_Load()
EnableDial
End Sub

Private Sub txtNumber_Change()
EnableDial
End Sub

Private Sub cmdDial_Click()
Dim buff As String
Dim nResult As Long

'Invoke tapiRequestMakeCall. If tapiRequestMakeCall returns 0, the
'request has been accepted. It is up to the call manager application
'to do any further work. The second-to-last argument should be
'changed to be the name of the person you are dialing.
nResult = tapiRequestMakeCall&(Trim$(txtNumber), CStr(Caption), "Test Dial", "")
'Display message if error
If nResult <> 0 Then
buff = "Error dialing number : "
Select Case nResult
Case TAPIERR_NOREQUESTRECIPIENT
buff = buff & "No Windows Telephony dialing application is running and none could be started."
Case TAPIERR_REQUESTQUEUEFULL
buff = buff & "The queue of pending Windows Telephony dialing requests is full."
Case TAPIERR_INVALDESTADDRESS
buff = buff & "The phone number is not valid."
Case Else
buff = buff & "Unknown error."
End Select
MsgBox buff
End If
End Sub

Private Sub cmdExit_Click()
Unload Me
End Sub

Private Sub EnableDial()
cmdDial.Enabled = Len(Trim$(txtNumber)) > 0
End Sub
sqhcmj 2003-09-07
  • 打赏
  • 举报
回复
可不可以给出完整的代码啊,包括拨出与挂断
wumy_ld 2003-09-07
  • 打赏
  • 举报
回复
打开串口,发送atdt命令
pigpag 2003-09-07
  • 打赏
  • 举报
回复
直接用Open语句打开Com好像就可以了。

你也可以参照一下这个:
http://www.vb-helper.com/HowTo/howto_dial_modem.zip
qifanghcy 2003-09-07
  • 打赏
  • 举报
回复
用MsCommon控件!到MSDN查一下吧,我也忘了,呵呵...不过不难的!*^_^*
rednod 2003-09-07
  • 打赏
  • 举报
回复
pigpag 2003-09-07
  • 打赏
  • 举报
回复
我觉得很奇怪,我不是已经贴出例程源码的URL了,怎么唾手可得的都懒得去看啊?!!非要贴在这里!!???

1,502

社区成员

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

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