[DUG] SetWindowPos HWND_TOPMOST

Mike Meyer mike.meyer at xtra.co.nz
Tue Aug 24 10:50:23 NZST 2010


Hi,
 
We have experienced similar issues. In our case it was a print dialog box 
sitting behind (instead of on top) a window resulting in the appearance of the 
app 'hanging' causing the end users to call our helpdesk.
 
The following seems to of fixed the problem we were experiencing
 
http://qc.embarcadero.com/wc/qcmain.aspx?d=3730
 
Mike




________________________________
From: John Bird <johnkbird at paradise.net.nz>
To: NZ Borland Developers Group - Delphi List <delphi at delphi.org.nz>
Sent: Tue, 24 August, 2010 10:32:52 AM
Subject: Re: [DUG] SetWindowPos HWND_TOPMOST


Not just Delphi - its an ancient Windows problem AFAIK.   Even in Windows 7 I 
have seen a control panel applets puts a modal dialog behind the window - often 
the best solution is Windows+D  (show desktop) and go thru all windows with 
alt+Tab and usually the hidden modal dialog is found.   Usually.
 
John

 
HI have seen this even happen in D2007 ! so I am not sure if it has been sorted 
in later Delphi versions. I have seen other Windows apps. Not written in Delphi 
Exhibit the same thing, so is it a Delphi thing, or a Windows thing?? P.s this 
happens on XP, Vista and Win7 that I have noticed.
 
Jeremy
 
From:delphi-bounces at delphi.org.nz [mailto:delphi-bounces at delphi.org.nz] On 
Behalf Of Ross Levis
Sent: Friday, 20 August 2010 22:04
To: 'NZ Borland Developers Group - Delphi List'
Subject: [DUG] SetWindowPos HWND_TOPMOST
 
I have a window in my app which needs to be set to stay on top of all others.  
In D7, if a modal dialog is activated from this window such as a TOpenFile, it 
appears underneath the window.  I believe later versions of Delphi resolve this 
problem.
 
I got around the issue by using SetWindowPos with HWND_NOTOPMOST just before the 
dialog is activated, and set it back again afterwards.
 
This works well generally, but a few users have complained of the entire app 
hanging either before the dialog appears or after it closes.  I’ve noticed this 
maybe twice over the last few years using XP.
 
Is this an XP bug or Delphi getting confused?
 
Perhaps I should try a Application.ProcessMessages after the SetWindowsPos.
 
Ross.
________________________________
_______________________________________________
NZ Borland Developers Group - Delphi mailing list
Post: delphi at delphi.org.nz
Admin: http://delphi.org.nz/mailman/listinfo/delphi
Unsubscribe: send an email to delphi-request at delphi.org.nz with Subject: 
unsubscribe
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://listserver.123.net.nz/pipermail/delphi/attachments/20100823/52e6f797/attachment-0001.html 


More information about the Delphi mailing list