RE: WIN32LIB Error on Open

new topic     » topic index » view thread      » older message » newer message

This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

------_=_NextPart_000_01C23686.B4FEA4E0
 charset=iso-8859-1

Hi Tony,
does this only happen with one specific program or can it happen with any
win32lib program? 

This error indicates that a Windows handle (hWnd) which had been associated
with a given win32lib control, is now associated with a different control.
This is not supposed to happen. When win32lib creates a control, it gets
asks Windows for a hWnd for it then sets the GWL_USERDATA for that handle to
the id..

   VOID = w32Func( xSetWindowLong, { hWnd, GWL_USERDATA, id } )

This stays in effect until the control is destroyed. Both the ID and the
hWnd can then be reused. But what this error seems to be saying is that two
controls are sharing the same hWnd - which I would have thought is a no-no.

Are you destroying and recreating controls in your program? 

-----------
Derek.

-----Original Message-----
From: Tony Steward [mailto:tony at locksdownunder.com]
Sent: Sunday, 28 July 2002 20:53
To: EUforum
Subject: WIN32LIB Error on Open


I think this has been asked before but anyway, why do I sometimes get the
following error when I launch an exw program.
I use win98se and win32lib 57.9 with euohoria 2.3
If required I can send the whole ex.err file.

ex.err report:
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:598 in procedure fShowError() 
attempt to divide by 0 
    pParams = {{103'g',101'e',116't',72'H',97'a',110'n',100'd',108'l',
101'e',58':',84'T',104'h',101'e',32' ',115's',116't',111'o',114'r',101'e',
100'd',32' ',104'h',87'W',110'n',100'd',32' ',102'f',111'o',114'r',32' ',
105'i',100'd',32' ',37'%',100'd',32' ',105'i',115's',32' ',110'n',111'o',
119'w',32' ',97'a',116't',116't',97'a',99'c',104'h',101'e',100'd',32' ',
116't',111'o',32' ',105'i',100'd',32' ',37'%',100'd'},499,{29,53'5'}}
    pMode = 2
    lErrCode = 499
    lResponse = 1
    lStyle = 16

and so on

Traced lines leading up to the failure:

C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8112     if at then
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8115         heldResource = removeIndex(
at, heldResource )
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8118 end procedure
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8367     end for
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8366     deleteObject( held[i][ResHandle]
)
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8092     if atom(resource) then
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8093        handle = resource
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8100     if isStockResource( handle ) then
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8060     return find(a, vStockResources)
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8104     at = findKey( handle,
heldResource )
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8105     if (at = 0) or 
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8107         lRC = w32Func( xDeleteObject,
{handle} )
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8111     at = findKey( handle,
heldResource )
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8112     if at then
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8115         heldResource = removeIndex(
at, heldResource )
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8118 end procedure
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8367     end for
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8370     for i = 1 to length( heldCursor )
do
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8374     heldCursor = {}
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8377     release_all_mem()
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8379     vWinMainState = kFinished
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:8381 end procedure
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:523 end procedure
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:595       if pMode = 2
C:\EUPHORIA\EXINCLUDE\Win32lib.ew:598      abort(1/0) -- Force the ex.err to
be created.





==================================================================
De informatie opgenomen in dit bericht kan vertrouwelijk zijn en 
is uitsluitend bestemd voor de geadresseerde. Indien u dit bericht 
onterecht ontvangt wordt u verzocht de inhoud niet te gebruiken en 
de afzender direct te informeren door het bericht te retourneren. 
==================================================================
The information contained in this message may be confidential 
and is intended to be exclusively for the addressee. Should you 
receive this message unintentionally, please do not use the contents 
herein and notify the sender immediately by return e-mail.


==================================================================

------_=_NextPart_000_01C23686.B4FEA4E0
Content-Type: application/ms-tnef

new topic     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu