📄 tquerythreadclass.pas
字号:
//******************************************************************************
//*本单元功能是继承了Comm的一个类模块 *
//*单元名称:TQueryThreadClass *
//*单元功能:232-485通讯 *
//*具体描述: *
//*开发作者:张志华 *
//*电子邮件:E-mail(MSN):luer88@163.net; QQ:29763034 TEL:13088096280 *
//*开发日期:2004-10-11 *
//*使用方法:用户需要向串口发送指定的字符的时候只需要调用相应的命令函数,然后再*
///*调用统一的发送函数SendByte(x:integer)其中X表示该命令需要发送的BUF的个数 *
//*属 性: *
//*修改日期: *
//******************************************************************************
unit TQueryThreadClass;
interface
uses
Classes,Db, DBTables,StdCtrls, SysUtils, UnitDataModule,ADODB,
ComObj, Messages,Dialogs,activeX,Windows
,Forms,QDialogs;
type
TQueryThread = class(TThread)
private
query:TAdoquery;
protected
procedure Execute; override;
public
end;
implementation
uses UnitMain, UnitPublic;
procedure TQueryThread.Execute;
var
OpenCount:Integer;
Cont_NO :Integer;
Terminal_NO :Integer;
Uport_NO :Integer;
UportData :Integer;
begin
inherited;
FreeOnTerminate:=True;
try
CoInitialize(nil);
query:=TAdoquery.Create(nil);
query.Connection:=frm_DataModule.ADO_Connection;
while not terminated do
begin
with query do
begin
close;
sql.Clear ;
Sql.Add('Select Equipment_NO,Equipment_Name,Equipment_Address,Cont,Terminal,Uport from [Equipment]order by Equipment_NO ');
open;
if RecordCount>0 then
begin
while Not Eof Do
begin
Cont_NO :=FieldByName('Cont').AsInteger;
Terminal_NO :=FieldByName('Terminal').AsInteger;
Uport_NO :=FieldByName('Uport').AsInteger;
try
MySpcomm.ReadUportReader(Cont_NO,Terminal_NO,Uport_NO);
except
end;
Sleep(MusicLength);
Next;
end;
end;
end;
end;
finally
CoUnInitialize;
end;
if terminated then
exit;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -