Hi Bruce,
Here is a little more info.
In the Process method I capture the data and connection information in a queue with this code:
  case self.Packet.PacketType
  of NET:SimpleAsyncOpenSuccessful
  of NET:SimpleIdleConnection
  of NET:SimplePartialDataPacket
  orof NET:SimpleWholeDataPacket
    MyString = self.packet.bindata[1 : size(MyString)]
    RequestQueue.MyDataInfoGrp  = MyString
    RequestQueue.FromIP  = self.packet.FromIP
    RequestQueue.SockID  = self.packet.SockID
    RequestQueue.OnSocket  = self.packet.OnSocket
    ADD(RequestQueue)
The in the Event:Timer I process and remove the records from the RequestQueue.
For this particular command I am doing the following.
            MyDataInfoGrp.Status = ERROR_SUCCESS
          NetLicServer.PrepAndSend(RequestQueue.FromIP,RequestQueue.SockID,RequestQueue.OnSocket)
            NetLicServer.CloseServerConnection(RequestQueue.OnSocket, RequestQueue.SockID)
I am getting the success status back in the client. If I load a new  client it cannot connect to the server.
All of my other commands are working fine.
Any ideas?
Thanks,
Rick