1.使用可以控制CommPort的OCX,例如Microsoft Communications Control或pdqComm。
//Script如下,ole_1为OCX Name
ole_1.object.CommPort = 2
ole_1.object.Settings = "9600,N,8,1"
ole_1.object.PortOpen = true
ole_1.object.InputLen = 0
2.//Get Data
ole_1.object.input()
//Put Data
ole_1.object.output = 'ATDT4125678'+char(13)
如果你要使用moden拨号可用
1.呼叫电话拨号员,RUN(c:\windows\dialer.exe)
2.VB或VC++的Microsoft Communications Control搭配moden的AT Command
3.windows API 的tapiRequestMakeCall(...)
4.windows API 的 TAPI
---- 在窗口设计菜单中选取:Declare菜单?Declare External Function 输入:
Function int OpenComm(String Comm,Uint Inqueue,Uint Outqueue)Library "USER.EXE"
Function int CloseComm(int lpt)Library "USER.EXE"
Function int WriteComm(int lpt,Stringbuf,int Size) Library "USER.EXE"
Function int FlushComm(int lpt,int no_que)Library "USER.EXE"
“拨号”按钮的”Clicked” 事件编程如下:
int ret
String port_2,ph_code
port_2="Com2"
ph_code="atdt"+sle_code+"~r~n" //取单行编辑框内容,并用atdt拨号
ret=OpenComm(port_2,128,128) //打开串口
FlushComm(ret,0) //拨号开始
FlushComm(ret,1)
WriteComm(ret,ph_code,len(ph_code))
WriteComm(ret,"~r~n",2)
CloseComm(ret)
Posted by powerbuilder学生 on August 13, 1999 at 10:15:46:
我是通过调用API实现的:
如你用的是二进制的,请把缓冲区改成BLOB型的。
首先定义外部函数:
Function Boolean CloseHandle(ulong hObject ) Library "kernel32.dll"