P
pickup
Unregistered / Unconfirmed
GUEST, unregistred user!
我用TcpServer做了一个服务程序,接受用户的查询命令然后查询数据库
将数据反馈给用户.现在就是在生存数据库连接时候报错:标记没有引用存储
代码如下:
procedure TMainForm.TcpServer1Accept(Sender: TObject;
ClientSocket: TCustomIpClient);
var
nSize,i:integer;
conn :TADOConnection;
buffer:Array of char;
s,rtnStr:String;
begin
nSize:=ClientSocket.ReceiveBuf(buffer,BufferSize);
for i:=1 to nSize do
begin
s:=s+buffer;
end;
try
conn:=TADOConnection.Create(self);///!!!!!!!有错
//
读数据库数据
//
rtnStr:='数据库数据';
except
on e:Exception do
rtnStr:=e.Message;
end;
//发送反馈字符
for i:=1 to BufferSize do
buffer:=chr(0);
for i:=1 to length(rtnStr) do
buffer:=rtnStr;
ClientSocket.SendBuf(buffer,length(rtnStr));
end;
是不是线程堆栈空间不够啊?
每个onAccept都是一个独立的线程里面运行吧?
有那位大侠知道的望不吝赐教!!!
将数据反馈给用户.现在就是在生存数据库连接时候报错:标记没有引用存储
代码如下:
procedure TMainForm.TcpServer1Accept(Sender: TObject;
ClientSocket: TCustomIpClient);
var
nSize,i:integer;
conn :TADOConnection;
buffer:Array of char;
s,rtnStr:String;
begin
nSize:=ClientSocket.ReceiveBuf(buffer,BufferSize);
for i:=1 to nSize do
begin
s:=s+buffer;
end;
try
conn:=TADOConnection.Create(self);///!!!!!!!有错
//
读数据库数据
//
rtnStr:='数据库数据';
except
on e:Exception do
rtnStr:=e.Message;
end;
//发送反馈字符
for i:=1 to BufferSize do
buffer:=chr(0);
for i:=1 to length(rtnStr) do
buffer:=rtnStr;
ClientSocket.SendBuf(buffer,length(rtnStr));
end;
是不是线程堆栈空间不够啊?
每个onAccept都是一个独立的线程里面运行吧?
有那位大侠知道的望不吝赐教!!!