Markus Humm wrote: > Ok, but I think I already obeyed to this.
The correct sequence was ThreadDetach in context of the thread that created the data module, later in TThread.Execute: MyIcsObject.ThreadAttach try AssignEventHandlers; CallAsyncMethod; PumpMessages until SessionClosed; finally MyIcsObject.ThreadDetach; end; ThreadDetach destroys the hidden window and ThreadAttach creates a new one. Special care must be taken to not use property "Handle" while no window handle is allocated since this silently created a new one ( at least since ICS V6 ). ICS events are always executed in the context of the thread that created the hidden window! > Let's see what the dynamic > creation will bring. It works reliable, I use TSmptCli and other ICS components in worker threads since many years successfully. > I suppose I don't need any thread attach/detach > then when I do it inside execute? Correct, just create and destroy the object in TThread.Execute, very easy. -- Arno Garrels -- To unsubscribe or change your settings for TWSocket mailing list please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket Visit our website at http://www.overbyte.be