Thanks for replying Slick, I will try to explain some more
For example in Delphi, you hold the mouse over a component on the pallete and a tooltips shows with the name of the component, this program would catch that handle, It would then not find Delphi.exe as its parent handle (which suprised me?), it would report the ProcID as that of Delphi. And then I suppose unsuprisingly the above function based on ProcID would report that the tooltip handle had not been closed, and hence the tooltip's entry in my process explorer would not be deleted.
A work around for this problem which your reply promted was to remove all windows from the list for which
GetWindowText(hWnd, TextBuf, SizeOf(TextBuf)); returns TextBuf as empty. However this is far from perfect since it also removes processes such as explorer.exe So my origonal question returns, is there a way of telling from its handle a tooltip from a 'real' application ? Also it would appear that the above CheckAlive function is flawed, how do I check if a handle still exists ?
David
Main Topics
Browse All Topics





by: Slick812Posted on 2005-06-04 at 20:47:05ID: 14147529
hello DavidBirch2dotCom, , I do not exactly know what yo mean by this -
"Does anyone know I can identify a tooltip from its handle ???"
How do you mean "Identify", isn't a windows handle the way the system "Identifys" the window, what do you mean?
I beleive the CSRSS.EXE is a windows system file (the windows system has it's own operating methods that sometimes do not apply the usual API restrictions for handles and operational performance), I am not familar with what part of the system functions CSRSS.EXE may have to deal with? but it seems that there would be something to deal with the system tool tips. . . I know from trying to "Use" and or change or get something from the system Close, minimize and max caption bottons that they do not seem to be any type of window, and the system uses it's own mouse detection to give functioning to these (hit test, which you can change), I would guess that the caption tool tips are generated with their own system setup and are generated by the hit test feedback. . . If the GWL_HWNDPARENT getWindowsLong returns a zero, then by definition, it has no parent, although the system may have some internal reference to help it keep track of these, that may be different (or the same) as it internal database references for everything that the system may be doing and keeping track of, , , like windows, handles, children, z-order, Device contexts, etc. . .
I probally did not give you anything about what you may be asking about, I mostly said something because no one else has. .
could you maybe expand your info, or say again what you are trying to get help with?