This sounds peculiarly similar to a bug we encountered a while back in a C#.NET 
WinForms project.

We would get an exception whenver certain types of docking operations were 
performed with Forms containing a DataGridView control.

The exception referenced the .NET ToolTip control, which we were not explicitly 
using so we were at first clueless what the problem might be.

Web research indicated that the .NET DataGridView control (among others) 
instantiates some ToolTip controls for its own use internally; and the .NET 
ToolTip control is really a wrapper for a Windows TOOLTIP native control (much 
like a VCL WinControl).

Furthermore there seems to be some kind of bug in XP's internal management of 
ToolTips in some contexts so that when they get recreated (as often happens to 
native Windows controls in both .NET and the VCL), some internal Windows handle 
or other is not being updated or assigned correctly, so the ToolTip reference 
becomes invalid.

We have a hacky but functional fix for the problem we've incorporated into our 
descendant version of DataGridView in its OnVisibleChanged() event which 
basically involves getting a referrence to the internal tooltip control and 
resetting it, forcing the ToolTip control to re-acquire its contents (and 
presumably corrects any internal handles).

You can read more about this WinForms/Windows bug here:

http://www.actiprosoftware.com/Support/Forums/ViewForumTopic.aspx?ForumTopicID=1836

http://codebetter.com/blogs/patricksmacchia/archive/2007/09/12/dissecting-an-undeterministic-windows-forms-v2-bug.aspx

I'm sorry I can't be much help with how to apply a similar fix in Delphi, if 
this is in fact the same issue.

HTH

Stephen Posey
stephenlpo...@earthlink.net

> I was wrong about it always occurring while minimizing. Here is
> another report, this one from the other PC. It apparently just
> occurred moving the mouse over the window, and appears related to
> displaying a hint, but the crash is in the exact same location as
> the minimize.
>
> exception message : Access violation at address 004BBE48 in module
> 'MyProgram.exe'. Read of address 3D579DE8.
> Main ($764):
> 004bbe48 MyProgram.exe Controls 4645 +53 TControl.WndProc
> 004beea7 MyProgram.exe Controls 6342 +33 TWinControl.WndProc
> 004d55d5 MyProgram.exe Forms 3102 +103 TCustomForm.WndProc
> 004beb24 MyProgram.exe Controls 6237 +3 TWinControl.MainWndProc
> 00475fa4 MyProgram.exe Classes 10966 +8 StdWndProc
> 7c90eae0 ntdll.dll KiUserCallbackDispatcher
> 004c2bb3 MyProgram.exe Controls 8719 +1
> THintWindow.ActivateHintData
> 004dcf8a MyProgram.exe Forms 7594 +57
> TApplication.ActivateHint
> 004dc917 MyProgram.exe Forms 7386 +20
> TApplication.HintMouseMessage
> 004bbd9d MyProgram.exe Controls 4612 +20 TControl.WndProc
> 004beea7 MyProgram.exe Controls 6342 +33 TWinControl.WndProc
> 004d55d5 MyProgram.exe Forms 3102 +103 TCustomForm.WndProc
> 004bbc18 MyProgram.exe Controls 4552 +5 TControl.Perform
> 004bec08 MyProgram.exe Controls 6258 +4 GetControlAtPos
> 004beca0 MyProgram.exe Controls 6277 +10 TWinControl.ControlAtPos
> 004bbc18 MyProgram.exe Controls 4552 +5 TControl.Perform
> 004bed3e MyProgram.exe Controls 6301 +15
> TWinControl.IsControlMouseMsg
>
> I would have been thinking it was a Windows or computer
> issue of some
> sort, but when it occurs on 2 independent computers, I'm not sure I
> can get away with that explanation.
>
> Thanks,
>
> Ross.
>
> >
> >
> > From: Ross Levis [mailto:r...@stationplaylist.com 
> > <mailto:r...@stationplaylist.com> ]
> > Sent: Thursday, 29 January 2009 12:50 p.m.
> > To: 'Borland's Delphi Discussion List'
> > Subject: Access violation in Delphi 7 unit - Help!
> >
> >
> >
> > A user running my software on 2 separate computers for
> > several months
> > has
> > reported that an access violation has suddenly started occurring on
> > both computers when simply minimizing the application.
> >
> > I gave him a build with MadExcept compiled in, and he sent
> > this crash
> > report.
> >
> > exception message : Access violation at address 004BBE48 in module
> > 'MyProgram.exe'. Read of address 3D579DE8.
> > Main ($7a8):
> >
> > 004bbe48 MyProgram.exe Controls 4645 +53 TControl.WndProc
> > 004beea7 MyProgram.exe Controls 6342 +33 TWinControl.WndProc
> > 004d55d5 MyProgram.exe Forms 3102 +103 TCustomForm.WndProc
> > 004beb24 MyProgram.exe Controls 6237 +3 TWinControl.MainWndProc
> > 00475fa4 MyProgram.exe Classes 10966 +8 StdWndProc
> > 7c90eae0 ntdll.dll KiUserCallbackDispatcher
> > 77d5538a USER32.dll SetActiveWindow
> > 004db5b4 MyProgram.exe Forms 6695 +4 TApplication.Minimize
> > 004db05f MyProgram.exe Forms 6541 +10 TApplication.WndProc
> > 004d7786 MyProgram.exe Forms 4214 +4 TCustomForm.WMSysCommand
> > 004bbe48 MyProgram.exe Controls 4645 +53 TControl.WndProc
> > 004beea7 MyProgram.exe Controls 6342 +33 TWinControl.WndProc
> > 004d55d5 MyProgram.exe Forms 3102 +103 TCustomForm.WndProc
> > 004beb24 MyProgram.exe Controls 6237 +3 TWinControl.MainWndProc
> > 00475fa4 MyProgram.exe Classes 10966 +8 StdWndProc
> > 77d4b7a6 USER32.dll SendMessageW
> > 77d4e025 USER32.dll DefWindowProcA
> > 77d4e361 USER32.dll CallWindowProcA
> > 004bef8b MyProgram.exe Controls 6369 +23
> > TWinControl.DefaultHandler
> > 004d6a52 MyProgram.exe Forms 3774 +7
> > TCustomForm.DefaultHandler
> > 004bc125 MyProgram.exe Controls 4743 +2 TControl.WMNCLButtonDown
> > 004d74e5 MyProgram.exe Forms 4102 +12
> > TCustomForm.WMNCLButtonDown
> >
> > What on Earth could be the problem? Hundreds of other
> > users are using
> > the
> > software with no problems.
> >
> > Any thoughts very welcome!
> >
> > Thanks,
> > Ross.
******************************************************************
This email and any files transmitted with it from the El Paso
Corporation are confidential and intended solely for the
use of the individual or entity to whom they are addressed.
If you have received this email in error please notify the
sender.
******************************************************************

_______________________________________________
Delphi mailing list -> Delphi@elists.org
http://lists.elists.org/cgi-bin/mailman/listinfo/delphi

Reply via email to