困惑我好久了.....“system Error code:1400 无效的窗口句柄问题...(中间层+Indy)(50)

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

aKnightChen

Unregistered / Unconfirmed
GUEST, unregistred user!
很奇怪,我中间层退出时,大约有10%的机会出现“system Error code:1400 无效的窗口句柄问题..."如果我不加下面过程中,不创建Ado控件,就不会报这个错不知我以下写法,哪里有错.哪位师兄帮忙指点一下,困惑我好久了.(即:pHSExtractProc里,如果没有用到数据库控件,就不会报错)procedure TfrmAppMain.IdTCPServer1Execute(AThread: TIdPeerThread);begin ... if ... then pHSExtractProc(...); //收到客户端发送的消息后,调用语句end;procedure TfrmAppMain.pHSExtractProc(sHSExtractID:string;aUserID:string;bNeedComInit:Boolean);var ...begin EnterCriticalSection(aBigSPSessions); lblStoreProcStatus.Visible:=True; //这是一个Label控件 lblStoreProcStatus.Caption:='中间层服务器正在进行海关拆料运算'; try try //这里,创建一个adoconn,并创建ADOQuery aADOConn:=TADOConnection.Create(nil); aADOConn.LoginPrompt:=False; aQRYTemp1:=TkADODataSet.Create(nil); aQRYTemp1.Connection:=aADOConn; aQRYTemp1.CommandTimeOut:=30; with aQRYTemp1 do begin ..... end; except on E:Exception do begin Memo1.Lines.Add('执行失败:'+E.message); Exit; end; end; finally lblStoreProcStatus.Visible:=False; FreeAndNil(aADOConn); FreeAndNil(aQRYTemp1); LeaveCriticalSection(aBigSPSessions); Memo1.Lines.Add('执行成功'); end;end;
 
过程执行中,无任何错误,但是,当中间层程序退出时,就偶尔会报上述错误.
 
自已顶一下,希望引起别人关注
 

Similar threads

后退
顶部