diff --git a/U:/Apache/Apache24/cgi-bin/lms_cgi b/U:/Apache/Apache24/cgi-bin/lms_cgi
index 991d33f..30fb8f6 100755
Binary files a/U:/Apache/Apache24/cgi-bin/lms_cgi and b/U:/Apache/Apache24/cgi-bin/lms_cgi differ
diff --git a/lms_cgi_server b/lms_cgi_server
index c2289af..5ce72b2 100755
Binary files a/lms_cgi_server and b/lms_cgi_server differ
diff --git a/lms_cgi_server.lpi b/lms_cgi_server.lpi
index ebb01a9..a58bc5f 100644
--- a/lms_cgi_server.lpi
+++ b/lms_cgi_server.lpi
@@ -6,14 +6,22 @@
+
+
+
+
+
+
+
+
diff --git a/lmsreport b/lmsreport
index b4d78af..d3623eb 100755
Binary files a/lmsreport and b/lmsreport differ
diff --git a/tcpclient.pas b/tcpclient.pas
index c82222a..2ce7231 100644
--- a/tcpclient.pas
+++ b/tcpclient.pas
@@ -17,6 +17,15 @@ type
fFields: TStrings;
fCommand: string;
fOnComplete: TRequestComplete;
+ fResult :TCommandData;
+ fmode: byte;
+ fCode:DWORD;
+ fValue:QWORD;
+ fAnswer: string;
+ fValues: TStrings;
+ fResData: TStream;
+ fResArray: TParamArray;
+ procedure SynchAnswer;
public
property Host: string read fHost;
property Command: string read fCommand write fCommand;
@@ -36,6 +45,12 @@ type
end;
implementation
+
+procedure TClientMainThread.SynchAnswer;
+begin
+ fOnComplete(self,fmode,fResult.code,fResult.Param,fResult.Name,fResult.Keys,fResult.iValues,fResult.Data);
+end;
+
constructor TClientMainThread.Create(ACommand: string; AFields: TStrings;
ALogger: TLogger; AHost: string; APort: integer; OnReceive: TRequestComplete);
begin
@@ -83,7 +98,13 @@ procedure TClientMainThread.ProcessAnswer(const mode: byte; const Code: DWORD;
begin
try
if assigned(fOnComplete) then
- fOnComplete(self,mode,code,qValue,Answer,Values,iValues,Data);
+ begin
+ fResult := TCommandData.Create(code,qValue,answer,Values,iValues,Data);
+ fMode := mode;
+ Synchronize(@SynchAnswer);
+
+
+ end;
except on e:Exception do
begin