Fastream Technologies wrote:

> Upgrading might be simpler than you think. Just rename ICSv5 folder,
> unzip and install v6 package and then rename all ICS unit names so
> that they start with "OverbyteIcs...".

Indeed it is easy, however if you have derived classes with overidden
WndProc-methods and custom messages it's a little bit more complicated
than just to rename unit names in the uses clause. Please read the 
comments in OverbyteIcsWndControl.pas.
   
--
Arno Garrels [TeamICS]
http://www.overbyte.be/eng/overbyte/teamics.html



> Best Regards,
> 
> SZ
> On Mon, May 26, 2008 at 4:46 PM, Olivier Sannier <[EMAIL PROTECTED]>
> wrote: 
> 
>> Because all my development was made with v5, that I do not want to
>> move to v6 right now as it is still a beta, and that I think there
>> must be something I did wrong to get this error message.
>> Sure, it would be nice to use v6, but it's not possible right now.
>> 
>> Fastream Technologies wrote:
>>> Hi,
>>> 
>>> Why don't you upgrade to v6? It was designed for sharing hidden
>>> Windows. 
>>> 
>>> Best Regards,
>>> 
>>> SZ
>>> 
>>> On Mon, May 26, 2008 at 3:23 PM, Olivier Sannier <[EMAIL PROTECTED]>
>>> wrote: 
>>> 
>>> 
>>>> Hi all,
>>>> 
>>>> I have a server here with parts of it written using Indy and parts
>>>> of it written using ICS. The two parts are distinct, listen on
>>>> different ports and do not share any resources. Basically, I'm
>>>> looking at replacing Indy with ICS and would like to have both
>>>> technologies in one service to be able to connect to one or the
>>>> other at will. On my development machine this works just fine,
>>>> just the same as it works fine on our test environment. However,
>>>> when put on a production server where most of the clients connect
>>>> to the Indy port, I'm seeing something very annoying when
>>>> connecting to the ICS port. Here is what happens on a working
>>>> connection: 
>>>> 
>>>> I connect using Telnet to the port
>>>> I type garbage
>>>> The server replies to me and closes the connection because I did
>>>> not send the right command
>>>> 
>>>> However, after about ten minutes, here is what happens:
>>>> 
>>>> I connect using Telnet to the port
>>>> I type garbage
>>>> No reply ever comes from the server, no matter the amount of
>>>> garbage I send.
>>>> 
>>>> I went further and traced it to the XSocketAllocateHWnd method that
>>>> returns 0 when called from the TCustomWSocket.Create constructor
>>>> for my client class.
>>>> Using GetLastError, I get the following message after the failure
>>>> of the call to CreateWindowEx:
>>>> 
>>>> Espace insuffisant pour traiter cette commande
>>>> 
>>>> which in English should be the equivalent of "Not enough storage to
>>>> complete this command"
>>>> 
>>>> And once this error has happened, the server stops working unless I
>>>> restart the process.
>>>> In turn, this triggers an aexception in
>>>> TCustomWSocket.AllocateSocketHWnd with the following call stack:
>>>> 
>>>> Exception raised: ESocketException, Cannot create a hidden window
>>>> for TWSocket.
>>>> Exception address: 0239F906
>>>> ---
>>>> Stack list
>>>> [0239F901] WSocket.TCustomWSocket.RaiseException (Line 1867,
>>>> "WSocket.pas" + 4) + $E
>>>> [023A15C2] WSocket.TCustomWSocket.AllocateSocketHWnd (Line 3573,
>>>> "WSocket.pas" + 11) + $9
>>>> [023A171B] WSocket.TCustomWSocket.Create (Line 3646, "WSocket.pas"
>>>> + 3) + $5
>>>> [023A831D] WSocket.TCustomLineWSocket.Create (Line 6847,
>>>> "WSocket.pas" + 1) + $4
>>>> [0239AE8F] MyServer.TMyClientSocket.Create (Line 545,
>>>> "uROIcsAsyncSuperTcpServer.pas" + 2) + $5
>>>> [0239D4C1] WSocketS.TCustomWSocketServer.TriggerSessionAvailable
>>>> (Line 367, "WSocketS.pas" + 22) + $A
>>>> [023A25A8] WSocket.TCustomWSocket.Do_FD_ACCEPT (Line 4342,
>>>> "WSocket.pas" + 2) + $8
>>>> [023A29F9] WSocket.TCustomWSocket.WMASyncSelect (Line 4460,
>>>> "WSocket.pas" + 88) + $6
>>>> [023A0CE5] WSocket.TCustomWSocket.WndProc (Line 3291,
>>>> "WSocket.pas" + 7) + $5
>>>> [023A8452] WSocket.TCustomLineWSocket.WndProc (Line 6882,
>>>> "WSocket.pas" + 14) + $5
>>>> [0239D2C1] WSocketS.TCustomWSocketServer.WndProc (Line 314,
>>>> "WSocketS.pas" + 14) + $5
>>>> [0239A810] MyServer.TMyWSocketServer.WndProc (Line 400,
>>>> "uROIcsAsyncSuperTcpServer.pas" + 6) + $4
>>>> [023A1137] WSocket.XSocketWindowProc (Line 3362, "WSocket.pas" +
>>>> 14) + $7 [0239C1CF] MyServer.TMessagePumpThread.Execute (Line 1006,
>>>> "uROIcsAsyncSuperTcpServer.pas" + 12) + $4
>>>> [00430A96] Classes.ThreadProc (Line 9866, "classes.pas" + 7) + $5
>>>> [00405450] System.ThreadWrapper (Line 12127, "system.pas" + 33) +
>>>> $0 
>>>> 
>>>> 
>>>> As you can see, I'm using my own message pump because all this is
>>>> implemented in a service that has no GUI whatsoever.
>>>> I don't think this can be the problem and in the end, I can't
>>>> figure out why creating a window would return this type of error.
>>>> I mean, I can start other processes just fine. To me, this looks
>>>> like the side effect of some other problem, but I can't figure out
>>>> which. 
>>>> 
>>>> Any help is most welcome
>>>> Cheers
>>>> Olivier
>>>> --
>>>> 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 
>>>> 
>>>> 
>> 
>> --
>>  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
-- 
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

Reply via email to