大家帮我看看以下代码(200分)

  • 主题发起人 主题发起人 activewy
  • 开始时间 开始时间
A

activewy

Unregistered / Unconfirmed
GUEST, unregistred user!
大家帮我看看以下代码:
procedure TForm1.Button1Click(Sender: TObject);
var
PhoneNumber : string;
CommPort : string;
NumberWritten : LongInt;
hCommFile : THandle;
begin
PhoneNumber := 'ATDT163' + #13 + #10;
CommPort := 'COM2';
{打开com口}
hCommFile := CreateFile(PChar(CommPort),
GENERIC_WRITE,
0,
nil,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
0);
if hCommFile=INVALID_HANDLE_VALUE then
begin
ShowMessage('不能打开'+ CommPort);
exit;
end;

{拨号}
NumberWritten:=0;
if WriteFile(hCommFile,
PChar(PhoneNumber)^,
Length(PhoneNumber),
NumberWritten,
nil) = false then begin
ShowMessage('不能写' + CommPort);
end;
end;
我的问题是:
在用AT指令拨号后,怎样得到modem返回的结果码?例如:没有拨号音为NO
DIALTONE;
是否要另开一个线程,临测modem所在的Com口才能做到?
 
有没有人做过用AT指令拨号,响应拨号的是自己写的程序而不拨号网络服务
 
这个问题难道真没人能回答吗?
 
我再加100分,难道这里没有高手?
 
大家不会这么冷漠吧!
 
自己搞定分自己留着
 
没有做过,估计的单独用一个线程来监测,我看QX的猫里有个软件能实现,不妨找找他的资料
 
来自http://wenjinshan.yeah.net或wenjinshan.mycool.net的
《Delphi串口及语音传真编程》已出版
 
肯定是要开线程来监听的
你可以下载一些COM口通讯组件的源代码来看看。
 
后退
顶部