COMM32.PAS
==========
Version 1.00
Comm32.pas is a simple Communications VC for Borland Delphi 2.0 which
demonstrates the Win32 Communications functions and the new Delphi
'TThread' class. It is implemented using two threads: one for reading
from, and one for writing to a Comm Port.
It probably needs to be implemented as a single thread for read/write
operations if it is needed for any synchronisation functions (such as
file-transfer algorithms).
I started to create a 'TAPI' component to use in conjunction with this
component (hence the 'OnRequestHangup' property) but as of this version
it is incomplete.
Version 1.02 - by small-pig team
1. Add Read/Write timing control
2. Add Data bits, Parity, Stop bits properties
3. Support software and hardware flow control: DTR/DSR, CTS/CTS, XON/XOFF
4. Add 'Sender' parameter in OnReceiveData
Version 2.0 - - by small-pig team
1. Support separatly DTR/DSR and RTS/CTS hardware flow control setting
2. Support separatly OutX and InX software flow control setting
3. Log file(for debug) may used by many comms at the same time
4. Add DSR sensitivity property
5. You can set the error char. replacement when parity error
6. Let XonLim/XoffLim and XonChar/XoffChar setting by yourself
7. You may change flow-control when comm is still opened
8. Change TComm32 to TComm
9. Add OnReceiveError event handler when overrun, framing error,
parity error
10. Fix some bug
Version 2.01 - - by small-pig team
1. Support some property about modem.
2. Add OnModemStateChange event hander when RLSD(CD) change state
Version 2.02 - - by small-pig team
1. Bug fix: When receive XOFF character, the system FAULT!!!!
2. Remove CommFileLog property
SPCOMM.PAS
==========
Version 2.5
1. Add OnSendDataEmpty event handler when all data in buffer
are sent(send-buffer become empty) this handler is called.
You may call send data here.
2. Change the ModemState parameters in OnModemStateChange
to ModemEvent to indicate what modem event make this call
3. Add RING signal detect. When RLSD changed state or
RING signal was detected, OnModemStateChange handler is called
4. Change XonLim and XoffLim from 100 to 500
5. Remove TWriteThread.WriteData member
6. PostHangupCall is re-design for debuging function
7. Add a boolean property SendDataEmpty, True when send buffer
is empty
USAGE
=====
To use the component once it is installed:
1) Attach an event handler to 'OnReceiveData'.
2) Call 'StartComm' to open the port.
3) Use the 'WriteCommData' method to write to the Comm port.
4) Call 'StopComm' to close the port.
PROPERTY
========
CommName : String
The name of comm port. The comm port is named 'COM1', 'COM2',...
This comm port must exist when you open it.
BaudRate : DWORD
The baud rate for this comm port. It must be a legal value for your
serial port can accept it.
You can change this value when the comm is open and
the real baud rate is changed immediately.
ParityCheck : Boolean
Specifies whether parity checking is enabled. If this member is TRUE,
parity checking is performed and errors are reported
(to OnReceiveError handler).
You can change this value when the comm is open.
Outx_CtsFlow : Boolean
Specifies whether the CTS (clear-to-send) signal is monitored
for output flow control. If this member is TRUE and CTS is turned off,
output is suspended until CTS is sent again.
CTS is a input pin. You can read its state from MSR register. It
usually connect to RTS pin in the other end.
It is often used for hardware flow control to indicate that the other
end if being waiting for data.
You can change this value when the comm is open.
CTS Input on | the other end is waiting for data
------------+----------------------------------------
Input off | the other end will NOT receive any data
Outx_DsrFlow : Boolean
Specifies whether the DSR (data-set-ready) signal is monitored for
output flow control. If this member is TRUE and DSR is turned off,
output is suspended until DSR is sent again.
DSR is a input pin. You can read its state from MSR register. It
usually connect to DTR pin in the other end.
It is often used for hardware flow control to indicate that the other
end is working(active, ready, wait for data...)
You can change this value when the comm is open.
DSR Input on | the other end is ready, and wait for your data
------------+----------------------------------------------------
Input off | the other end is not ready, we cannot send data out
DtrControl : ( DtrEnable, DtrDiable, DtrHandshake )
Specifies the DTR (data-terminal-ready) flow control. This member
can be one of the following values:
Value Meaning
------------- ------------------------------------------------------
DtrDiable Disables the DTR line when the device is
opened and leaves it disabled.
DtrEnable Enables the DTR line when the device is
opened and leaves it on.
DtrHandshake Enables DTR handshaking. When our comm port is opened
and ready for receiving data, DTR is enabled. When
our comm port is suspend, closed or has error
(and not cleared), DTR is disable.
If handshaking is enabled, it is an error for the
application to adjust the line by using the Win32
EscapeCommFunction function.
DTR is a output pin. You can set its state in MCR register.
It usually connect to DSR pin in the other end.
You can change this value when the comm is open.
DsrSensitivity : Boolean;
Specifies whether the communications driver is sensitive to the
state of the DSR signal. If this member is TRUE, the driver ignores
any bytes received, unless the DSR modem input line is high.
You can change this value when the comm is open.
TRUE | ignore any received byte
-------+------------------------------
FALSE | nothing
TxContinueOnXoff : Boolean;
Specifies whether transmission stops when the input buffer is full
and the driver has transmitted the XoffChar character. If this member
is TRUE, transmission continues after the input buffer has come within
XoffLim bytes of being full and the driver has transmitted the
XoffChar character to stop receiving bytes. If this member is FALSE,
transmission does not continue until the input buffer is within XonLim
bytes of being empty and the driver has transmitted the XonChar
character to resume reception.
You can change this value when the comm is open.
TRUE | enable or disable transmisstion has no any relation with
| input buffer
-------+-------------------------------------------------------------
FALSE | When Xoff is send(input buffer will be full),stop transmission.
| And stop continue until Xon is send(input buffer will empty).
Outx_XonXoffFlow : Boolean
Specifies whether XON/XOFF flow control is used during transmission.
If this member is TRUE, transmission stops when the XoffChar character
is received and starts again when the XonChar character is received.
You can change this value when the comm is open.
Action | Xoff received | Xon received
--------+--------------------+---------------------------
TRUE | stop transmission | resume t
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
Delphi6网络通信协议分析与应用实现附书源码 (605个子文件)
ARROW2R.BMP 376B
mkdir.bmp 222B
TnProxy.cfg 386B
DNS.cfg 386B
Rpc.cfg 386B
NetBios.cfg 386B
Project1.cfg 386B
MULtiIP.cfg 386B
Project1.cfg 386B
netmask.cfg 386B
Project1.cfg 386B
Project1.cfg 386B
Project2.cfg 386B
mytrans.cfg 386B
mytrans.cfg 386B
Demo.cfg 358B
FTP.cfg 342B
FTPSERV.cfg 342B
TNCLIENT.cfg 342B
telnet.cfg 342B
Telnet.cfg 342B
webproxy.cfg 342B
WebServer.cfg 342B
demo.cfg 342B
TCPHist.cfg 342B
TCPIPMon.cfg 342B
Project2.cfg 282B
GetIP.cfg 282B
GetIP.cfg 282B
Project1.cfg 282B
Project1.cfg 282B
ip.cfg 15B
getfile.db 4KB
getfile.db 4KB
upfile.db 2KB
upfile.db 2KB
Mail2000.dcr 1KB
WSOCKET.DCR 1KB
WSOCKET.DCR 1KB
WSOCKET.DCR 1KB
WAIT.DCR 1KB
WAIT.DCR 1KB
WAIT.DCR 1KB
WSOCKET.DCR 1KB
WSOCKET.DCR 1KB
WAIT.DCR 1KB
WAIT.DCR 1KB
mysock.dcr 920B
FTPSRV.DCR 476B
OopsTelnet.dcr 476B
TNEMULVT.DCR 472B
HTTPGet.dcr 472B
TNCNX.DCR 468B
EMULVT.DCR 468B
TNCNX.DCR 468B
SPCOMM.DCR 464B
SPCOMM.DCR 464B
FTPSRV.DCR 412B
TNEMULVT.DCR 411B
EMULVT.DCR 409B
TNCNX.DCR 408B
Mail2000.dcu 87KB
MyMail.dcu 87KB
WSOCKET.dcu 84KB
WSOCKET.dcu 84KB
EMULVT.dcu 78KB
FTPSRV.dcu 61KB
MyTelnet.dcu 33KB
MySock.dcu 28KB
OopsTelnet.dcu 28KB
IPHelper.dcu 25KB
fm_mainclt.dcu 24KB
fm_mainclt.dcu 24KB
IPHelper.dcu 24KB
Fax.dcu 24KB
IPHelper.dcu 23KB
FTP_API.dcu 22KB
fm_mainsev.dcu 22KB
fm_mainsev.dcu 22KB
TNEMULVT.dcu 20KB
SPCOMM.DCU 20KB
SPCOMM.DCU 20KB
FTPSERV1.dcu 20KB
DemoForm.dcu 20KB
pfm_main.dcu 18KB
pfm_main.dcu 18KB
MysockHttp.dcu 16KB
fmainform.dcu 15KB
FTPSRVC.dcu 14KB
TNOPTFRM.dcu 13KB
TNOPTFRM.dcu 13KB
TnCnx.dcu 11KB
TnCnx.dcu 11KB
ProxyForm.dcu 11KB
TNCLI1.dcu 10KB
Main.dcu 10KB
fm_main.dcu 10KB
fm_main.dcu 10KB
uNetMon.dcu 10KB
HTTPGet.dcu 9KB
共 605 条
- 1
- 2
- 3
- 4
- 5
- 6
- 7
资源评论
- qiangge999992014-09-21学习网络编程的好帮手
- hxx2014-03-25还不错。还不需要积分
普通网友
- 粉丝: 882
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于Spring Cloud和Spring Boot的微服务架构管理系统.zip
- (源码)基于物联网的自动化开门控制系统 iotsaDoorOpener.zip
- (源码)基于ROS的Buddy Robot舞蹈控制系统.zip
- (源码)基于Qt框架的图书管理系统.zip
- (源码)基于Spring Boot和Vue的高校教务管理系统.zip
- (源码)基于Quartz框架的定时任务调度系统.zip
- (源码)基于Spring Boot和Spring Security的安全管理系统.zip
- (源码)基于Spring Boot的家庭智能助理系统.zip
- Marki_20241121_192504660.jpg
- (源码)基于Spring Boot框架的仓库管理系统.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功