在delphi5中如何接收com2口的数据?(100分)

  • 主题发起人 主题发起人 gyq918
  • 开始时间 开始时间
G

gyq918

Unregistered / Unconfirmed
GUEST, unregistred user!
请问在delphi中如何设计一程序,使之能接收com2口的数据。(用于接收考勤的)。
 
随便去找一个控件不能用吗?
 
控件好多的,mscomm,asycn32,要我发一个给你?
 
用API比较好
 
只用delphi5的控件行吗?
 
内嵌汇编代码最爽:)
找本接口原理的书,记下几个端口,
以及一些寄存器的作用即可开工。
 
用Async32吧。
 
用API函数
var
lpdcb:Tdcb;
Begin
hcom:=createfile(pchar('com2'),generic_read or
generic_write,0,nil,open_existing,
file_attribute_normal,0);//打开串行口
if hcom=invalid_handle_value then
showerror('串口初始化失败!!!',true)
else
begin
getcommstate(hcom,lpdcb);
lpdcb.baudrate:=9600;
lpdcb.StopBits:=0;
lpdcb.ByteSize:=8;
lpdcb.Parity:=noParity; //偶校验
Setcommstate(hcom,lpdcb);
end;
写入时用
writefile(hcom,pointer(temp)^,length(temp),lrc,nil);

这是小弟写的串口写入数据采用的方法,串口读取数据的方法应雷同,有空帮你试试。
希望对你有帮助
 
vb中有一mscomm active控件把他import到delphi中就可以了
 
收Com2和收Com1有什么区别?一样的是串口操作。
参见问题http://www.delphibbs.com/delphibbs/DispQ.asp?LID=451630的解答。
 
用SPCOMM吧
 
就用API createfile writefile等 建议找一本<Windows95通信编程>看看
------------------- 清华出版社出
com1 com2没什么区别 只是一个参数而已
 
多人接受答案了。
 
后退
顶部