Hello Wilfried! 

I've downloaded the Your zip file (if you have more test files further on,
you can send them directly to me if it is easier for you). 
Here are the results from the Swedish jury :-)

Best Regards
Henrik


On a computer where the component error is not showing:
-------------------------------------------------------
(first time. Host=out.pandora.be)
00B14620 DNS Lookup for out.pandora.be
00B14620 Host found, connecting to: 195.130.137.75
00B14620 Opened
00B14620 Connecting
00B14620 Timed out
00B14620 Closed

(second time. Host=out.pandora.be)
00B13970 DNS Lookup for out.pandora.be
00B13970 Host found, connecting to: 195.130.137.75
00B13970 Opened
00B13970 Connecting
00B13970 Timed out
00B13970 Closed

(first time. Host=smtp.bredband.net)
00B14620 DNS Lookup for smtp.bredband.net
00B14620 Host found, connecting to: 195.54.106.231
00B14620 Opened
00B14620 Connecting
00B14620 Connected
00B14620 < 220 ironport.bredband.com ESMTP
00B14620 > QUIT
00B14620 < 221 ironport.bredband.com
00B14620 Closed

(second time. Host=smtp.bredband.net)
00B14620 DNS Lookup for smtp.bredband.net
00B14620 Host found, connecting to: 195.54.106.231
00B14620 Opened
00B14620 Connecting
00B14620 Connected
00B14620 < 220 ironport.bredband.com ESMTP
00B14620 > QUIT
00B14620 < 221 ironport.bredband.com
00B14620 Closed

On a computer where the component error shows:
----------------------------------------------
(first time. Host=out.pandora.be)
00C8242C DNS Lookup for out.pandora.be
00C8242C Host found, connecting to: 195.130.137.75
00C8242C Opened
00C8242C Connecting
00C8242C Timed out
00C8242C Closed
!!!! Here an error occurs and I get the following "standard" Windows error
dialog when an application has done something wrong (freely translated):
  SmtpTest.exe has encountered a problem and has to be terminated... 
  Describe the problem to Microsoft
  We have created an error report that You can send to us...

(first time. Host=smtp.bredband.net)
00C8242C DNS Lookup for smtp.bredband.net
00C8242C Host found, connecting to: 195.54.106.231
00C8242C Opened
00C8242C Connecting
00C8242C Connected
00C8242C < 220 ironport.bredband.com ESMTP
00C8242C > QUIT
00C8242C < 221 ironport.bredband.com
00C8242C Closed

(second time. Host=smtp.bredband.net)
00C83960 DNS Lookup for smtp.bredband.net
!!!! Freeze/Hang but possible to move window




-----Ursprungligt meddelande-----
Från: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] För
Wilfried Mestdagh
Skickat: den 16 december 2006 12:59
Till: ICS support mailing
Ämne: Re: [twsocket] Freeze when using smtp after recreating itsparentform

Hello Henrik,

I have no idea anymore. As test I made a little application in Delphi.
Please download it at http://www.mestdagh.biz/test/smtptest.zip and tell me
if you have it (then I can delete it from server).

It does more or less the same as you do with the form, just creates an
object that connect to smtp server, receive banner, send quit and destroy
itself when answer from quit, or timed out. I'm curious if this works on the
offending machines.

---
Rgds, Wilfried [TeamICS]
http://www.overbyte.be/eng/overbyte/teamics.html
http://www.mestdagh.biz

Friday, December 15, 2006, 14:19, Henrik wrote:

> Hi Wilfried!

> Here are the results when tracing all occurrences of WSocketGCount in 
> the ICS code. I tested the both the original example code and the one 
> that manually loads/unloads winsock, on two different computers.

> Please let me know if I can do some other tracing that could shed 
> light on the problem...

> Best Regards
> Henrik



> ON THE EXAMPLE COMPUTER WHERE THE ERROR SHOWS 
> =============================================

> Original code that hangs
> ------------------------
> (Creating smtpTestForm from main form, pressing connect, close 
> smtpTestForm, release smtpTestForm from main form) constructor 
> TCustomWSocket.Create: 0 -> 1 procedure SafeIncrementCount: 1 -> 2 
> procedure SafeDecrementCount: 2 -> 1 procedure SafeIncrementCount: 1 
> -> 2 procedure SafeDecrementCount: 2 -> 1 procedure 
> SafeIncrementCount: 1 -> 2 procedure SafeDecrementCount: 2 -> 1 
> destructor TCustomWSocket.Destroy: 1 -> 0 procedure 
> WSocketUnloadWinsock: 0 destructor TCustomWSocket.Destroy: 0

> (Creating smtpTestForm from main form, pressing connect, hang...) 
> constructor TCustomWSocket.Create: 0 -> 1 procedure 
> SafeIncrementCount: 1 -> 2 procedure SafeDecrementCount: 2 -> 1 
> procedure SafeIncrementCount: 1 -> 2 procedure SafeDecrementCount: 2 
> -> 1 procedure SafeIncrementCount: 1 -> 2 procedure 
> SafeDecrementCount: 2 -> 1
> -!- The application hangs -!-


> Manually ForceLoadWinsock and CancelForceLoadWinsock
> ----------------------------------------------------
> (ForceLoadWinsock on main form creation, Creating smtpTestForm from 
> main form, pressing connect, close smtpTestForm, release smtpTestForm 
> from main
> form)
> procedure WSocketForceLoadWinsock 0 -> 1 constructor 
> TCustomWSocket.Create: 1 -> 2 procedure SafeIncrementCount: 2 -> 3 
> procedure SafeDecrementCount: 3 -> 2 procedure SafeIncrementCount: 2 
> -> 3 procedure SafeDecrementCount: 3 -> 2 procedure 
> SafeIncrementCount: 2 -> 3 procedure SafeDecrementCount: 3 -> 2 
> destructor TCustomWSocket.Destroy: 2 -> 1 destructor 
> TCustomWSocket.Destroy: 1

> (Creating smtpTestForm from main form, pressing connect, close 
> smtpTestForm, release smtpTestForm from main form, 
> CancelForceLoadWinsock in
> mainform.OnCloseQuery)
> constructor TCustomWSocket.Create: 1 -> 2 procedure 
> SafeIncrementCount: 2 -> 3 procedure SafeDecrementCount: 3 -> 2 
> procedure SafeIncrementCount: 2 -> 3 procedure SafeDecrementCount: 3 
> -> 2 procedure SafeIncrementCount: 2 -> 3 procedure 
> SafeDecrementCount: 3 -> 2 destructor TCustomWSocket.Destroy: 2 -> 1 
> destructor TCustomWSocket.Destroy: 1 procedure 
> WSocketCancelForceLoadWinsock: 1 -> 0 procedure WSocketUnloadWinsock: 
> 0 Wsocket finalization: 0 procedure WSocketUnloadWinsock: 0





> ON THE COMPUTER WHERE THE ERROR DO NOT SHOW 
> ===========================================

> Original code that hangs on some computers
> -----------------------------------------
> (Creating smtpTestForm from main form, pressing connect, close 
> smtpTestForm, release smtpTestForm from main form) constructor 
> TCustomWSocket.Create: 0 -> 1 procedure SafeIncrementCount: 1 -> 2 
> procedure SafeDecrementCount: 2 -> 1 procedure SafeIncrementCount: 1 
> -> 2 procedure SafeDecrementCount: 2 -> 1 procedure 
> SafeIncrementCount: 1 -> 2 procedure SafeDecrementCount: 2 -> 1 
> destructor TCustomWSocket.Destroy: 1 -> 0 procedure 
> WSocketUnloadWinsock: 0 destructor TCustomWSocket.Destroy: 0

> (Creating smtpTestForm from main form, pressing connect, close 
> smtpTestForm, release smtpTestForm from main form) constructor 
> TCustomWSocket.Create: 0 -> 1 procedure SafeIncrementCount: 1 -> 2 
> procedure SafeDecrementCount: 2 -> 1 procedure SafeIncrementCount: 1 
> -> 2 procedure SafeDecrementCount: 2 -> 1 procedure 
> SafeIncrementCount: 1 -> 2 procedure SafeDecrementCount: 2 -> 1 
> destructor TCustomWSocket.Destroy: 1 -> 0 procedure 
> WSocketUnloadWinsock: 0 destructor TCustomWSocket.Destroy: 0 Wsocket 
> finalization: 0 procedure WSocketUnloadWinsock: 0


> Manually ForceLoadWinsock and CancelForceLoadWinsock
> ----------------------------------------------------
> (ForceLoadWinsock on main form creation, Creating smtpTestForm from 
> main form, pressing connect, close smtpTestForm, release smtpTestForm 
> from main
> form)
> procedure WSocketForceLoadWinsock 0 -> 1 constructor 
> TCustomWSocket.Create: 1 -> 2 procedure SafeIncrementCount: 2 -> 3 
> procedure SafeDecrementCount: 3 -> 2 procedure SafeIncrementCount: 2 
> -> 3 procedure SafeDecrementCount: 3 -> 2 procedure 
> SafeIncrementCount: 2 -> 3 procedure SafeDecrementCount: 3 -> 2 
> destructor TCustomWSocket.Destroy: 2 -> 1 destructor 
> TCustomWSocket.Destroy: 1

> (Creating smtpTestForm from main form, pressing connect, close 
> smtpTestForm, release smtpTestForm from main form, 
> CancelForceLoadWinsock in
> mainform.OnCloseQuery)
> constructor TCustomWSocket.Create: 1 -> 2 procedure 
> SafeIncrementCount: 2 -> 3 procedure SafeDecrementCount: 3 -> 2 
> procedure SafeIncrementCount: 2 -> 3 procedure SafeDecrementCount: 3 
> -> 2 procedure SafeIncrementCount: 2 -> 3 procedure 
> SafeDecrementCount: 3 -> 2 destructor TCustomWSocket.Destroy: 2 -> 1 
> destructor TCustomWSocket.Destroy: 1 procedure 
> WSocketCancelForceLoadWinsock: 1 -> 0 procedure WSocketUnloadWinsock: 
> 0 Wsocket finalization: 0 procedure WSocketUnloadWinsock: 0






> -----Ursprungligt meddelande-----
> Från: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] För Wilfried Mestdagh
> Skickat: den 14 december 2006 16:31
> Till: ICS support mailing
> Ämne: Re: [twsocket] Freeze when using smtp after recreating 
> itsparentform

> Hello Henrik,

> What you could do is set in IDE some breakpoints at the places the dll 
> is loaded / unloaded. To see if this mechanism is working fine on the 
> offending machines. It is a counter that increment / decrement to 
> decide if winsock should be load or unload.

--
To unsubscribe or change your settings for TWSocket mailing list please goto
http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be
-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be

Reply via email to