Contact Us


Minimizing Delphi program windows

Posted by TychoQuad 
Minimizing Delphi program windows
October 31, 2003 07:18AM
Currently, whenever you attempt to minimize a application written in delphi with strokeit, it does not minimize correctly, and gets transformed into a little box that sits in the bottom right of your screen until restored. This is a pain in the arse. I have been recently speaking to a developer of an alternatve shell called Geoshell, which had the same problem, and with a little testing, we fixed it. I was hoping that Strokeit could be fixed too. Here's the letter he sent me on the incident:


right, the problem with delphi apps, is that they consist of a number of
windows. The main window you see, a hidden window, and in the case of the
MDI apps, a toolbar window as well.

What happens with GeoShell, is we get a list of "Valid Windows". In the case
of most apps, it is just the main window. For VB Apps it is a hidden window,
and for delphi apps, it is the actual window, but as a child of the hidden

So if we send the messages to the window handle that we store, for most apps
that is fine. For VB apps that also seems to work, but for delphi apps, the
minimize message hides everything (thus the dissapearing) and the restore
shows the hidden window as well as the app window. So we use a function
called GetLastActivePopup, which gets the last active window which is part
of the window to which we are talking.

This is what fixed the Media Player Classic bug. But that makes the delphi MDI apps minimize
wrong, because it returns the handle of the toolbar, instead of the window.

So I have put in a check. First get the Last active popup. If it is a valid
window (we have a function to determine that) then use that handle, else use
the main handle.

And it seems to be ok. just need more people to test it.

hope that helps, if you need more info, just give me a shout.


Would it be possible to apply the same fix to Strokeit based off the infomation here? I would be willing to test again with Strokeit just like I did with Geoshell

Re: Minimizing Delphi program windows
November 03, 2003 03:47AM
Hi TychoQuad,

Ok this could be fixed by Jeff but you can easy workaround this by adding the application to StrokeIt and send [ALT_DOWN][SPACE]n[ALT_UP]

I found an example with Heavy Load

<VERSION>StrokeIt .9.2a</VERSION>

<APP name="HeavyLoad">
Minimize Delphi Programs {
gesture = / Down
Alt + Space +n = keys, keys [ALT_DOWN][SPACE]n[ALT_UP]

Hope that helps

with best regards


By the way the problem is discussed here also

Re: Minimizing Delphi program windows
November 12, 2003 05:52AM
Yes it does, thanks
Re: Minimizing Delphi program windows
November 12, 2003 06:16AM
Is there any trick to adding that command in through the interface? it is quite annoying to have to set that one config file as read only to get strokeit to save the changes. I would still like this fixed, but now the fix only has to include to do this minimize option for certain applications.
Re: Minimizing Delphi program windows
November 27, 2003 09:24PM
this minimize trick could be included in the default actions at least for the bat


Spam prevention:
Please, solve the mathematical question and enter the answer in the input field below. This is for blocking bots that try to post this form automatically.
Question: how much is 9 plus 20?