Prevent Full-Screen games from minimizing while activating another window.

Dear experts,

I'm looking for a way to prevent full-screen games beeing miminized while working with other softwares like IM on a secondary screen in dual-monitor?

Even by hooking to the game and inserting some "Anti-Minimizing" code?


Please help,
Janalopa
janalopaAsked:
Who is Participating?
 
☠ MASQ ☠Connect With a Mentor Commented:
OK but you need to read around Direct X full screen exclusive mode - pretty much all games will use this. In a multi-tasking environment like Windows this prevents other applications drawing to the display. If another app calls WM_ACTIVATEAPP the exclusively open window will be minimised to retain system integrity. So if you don't use some form of windowed solution you'll end up with an unstable system.
0
 
☠ MASQ ☠Commented:
The game will want to run in Exclusive mode so the simplest fix will be to run it windowed on display 1 resized to fit the screen.
Most games will do this but there may be a small hit on performance.
0
 
janalopaAuthor Commented:
Please don't post solution of turning the game into windowed mode, I don't want to do this.
0
Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

 
George TokasCommented:
Trap the message for window focus lost or deactivation and discard it....
This is the simplest way...
Usually exclusive mode prevents window deactivation...
One of the ways to lose focus or to be deactivated is when using ALT-TAB combination...
You can trap that condition also... There are many posts here about this...

George Tokas.
0
 
George TokasCommented:
You have to remember that you risk if the application hangs not be able to close it since maybe and task manager to fail displaying...
It happened to me many times especially when I forgot to place escape conditions inside loops...

George Tokas.
0
 
janalopaAuthor Commented:
Dear gtokas,

Thanks for your comments, this is the way I want to deal with the situation.

1. You've said there are many posts about this, can you refer me to the keywords I need to search in-order to find them (cause I've tried before)

2. Do you think the program I want to simultaneously control will act good?
e.g. Button hovers, dragging (dragmove), resizing, Tooltips, context menues etc... ?

Many thanks!

Janalopa
0
 
George TokasConnect With a Mentor Commented:
1. Try "ALT TAB" at the search box. There will be MANY results...
In some of the results you will find and ways to trap messages as I proposed...
One more way to solve the problem is to make your app window "TopMost" over the others, just like the TaskManager...
2. Resizing in exclusive mode is not available because of the setting of the screen will be the one you will set, in example 800x600...
I posted for potential risks using this mode in case of application hangs...
One more thing about this (exclusive mode) is that when the application loose visibility (minimized in example) when it is restored you have again to set up all the graphics and sound buffers again before use...

There is an alternative for that named "pseudo fullscreen" mode that is a windowed mode streatched in all visible area.
For WindowsXP this works very good but in Windows7 the quality is decreased and we have pixelation...
In this case I tried an application created with 800x600 resolution to be streatched to 1680x1024. In XP it looks VERY good. In Windows7 I got pixelation. Of course this can be solved using a higher resolution.
The pseudo fullscreen mode is a Windowed application borderless and maximized... This setting covers the entire screen's visible area.
As for resizing check out: http://www.tokas-bros.eu/3DEngineEn.html and you will find some demos. All of them created using a set of wrapper classes and C++ Builder. Try resizing and see what I mean...

George Tokas.
0
 
janalopaAuthor Commented:
Still didn't find a way to prevent the full-screen (exclusive-mode) game from beeing restored/minimized while controlling a different application (say on another screen).
0
 
George TokasCommented:
>>say on another screen).
Different monitor??
The application in anyway will lose input focus and maybe minimized...
Those depents on the application...
Try NOT reading input when the application lose input focus...
Also make the application "top most"...
Exclusive mode applications are tricky ones and that is why I proposed "pseudo" full screen mode...
If your needs are just for debugging use that option..

George Tokas.
0
 
☠ MASQ ☠Commented:
If this were a game you were coding from scratch it might be easier but commercial games are obstinately coded to retain focus using exclusive mode :(
0
 
STS-TechCommented:
try this program, make the game always on top or the chat program, i'm not sure which way to go about it, note i've never used it.

http://www.fadsoft.net/AlwaysOnTopMaker.htm
0
 
☠ MASQ ☠Commented:
No you can't  is sometimes the right answer
#32030393 & #32129495
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.