I know that WinKey+M and Winkey+D will essentially minimize all windows and show me my desktop. However, I have been unable to locate a similar shortcut key that either maximizes or restores all windows. Is there a pre-existing way to do this in Windows 7? I'd rather not mess with the BiOS if I don't have to.


Well, I doubt that it is really the answer that you are looking for, but on Windows 7, you could save this as a powershell script somewhere:

$dllInfo = '[DllImport("user32.dll")] public static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow);'
Add-Type -MemberDefinition $dllInfo -name NativeMethods -namespace Win32
foreach($proc in Get-Process){
    $hwnd = $proc.MainWindowHandle
    # Restore window
    [Win32.NativeMethods]::ShowWindowAsync($hwnd, 4) | Out-Null

Then bind a key to run that script.

| improve this answer | |
  • This seems cool but a bit beyond me, unfortunately. +1 because this is basically exactly what I asked for. – Aarthi Jul 22 '11 at 19:31
  • Could you please elaborate about how to bind a key to run that script? – haimg Oct 12 '11 at 16:22
  • The easiest way is probably to use Autohotkey. – EBGreen Oct 12 '11 at 17:08
  • Looks like this only maximizes one window from each process, right? – ruffin Jun 27 '18 at 19:42
  • Yes it would only maximize the main window associated with that process. – EBGreen Jun 28 '18 at 2:21

Use WinKey+Shift+M to restore minimized windows to the desktop.

Use WinKey+Up Arrow to maximize the current window.

Use WinKey+Left Arrow to maximize the window to the left side of the screen.

Use WinKey+Right Arrow to maximize the window to the right side of the screen.


| improve this answer | |
  • 2
    FYI: This only works for Windows Vista+ – James Mertz Jul 21 '11 at 13:55
  • 1
    FYI : This is for win7 , see the source. – Binarylife Jul 21 '11 at 13:56
  • 2
    This is not actually an answer, is it? – Daniel Beck Jul 21 '11 at 13:57
  • 5
    Sorry, but I agree with @Daniel Beck. How does this restore or maximize ALL windows? I just tried the first one, which was the most promising, and it did not work. – KCotreau Jul 21 '11 at 14:05
  • 1
    @DanielBeck the first shortcut is working for me on Win 7 as it should like a charm. – avirk Aug 29 '12 at 2:16
  1. Open Windows Task Manager ( Ctrl + Shift + Esc).
  2. Make sure the Applications tab is selected.
  3. Go to the menu item Windows, then select Maximize.

This will maximize all windows regardless of their current state.

| improve this answer | |
  • That was a new trick! Nice find – Canadian Luke Jan 11 '13 at 23:31
  • 2
    AFAIK this was the only way to maximize, cascade, or pile multiple minimized windows (very useful when you have DOZENS of instances from the same program) since you can select multiple applications using the "SHIFT" key. Unfortunately, this "feature" is no longer possible starting with windows 8 and the new task manager – vegatripy Feb 19 '15 at 13:00
  • This was the solution I was looking for. I am using a AutoHotkey script to only switch between windows of a single application(like in Mac). But the script only works on windows that are not minimized. This solves the problem of maximizing all windows but it requires too many steps. I wonder if there is any way of using some kind of script to program this to a keyboard shortcut. – Ghos3t Mar 8 '18 at 9:13

If you press WinKey+D again, it will restore all windows back to their previous state before you pressed WinKey+D the first time. Works in Windows 7.

| improve this answer | |

In this solution, you can toggle status of "only one window":

You can use WinKey+1, WinKey+2, ..., WinKey+9, WinKey+0 to toggle between minimized and restored status of each one of:

  • the first 10 tasks in taskbar (including the not initialized ones but that are fixed in taskbar), when not showing tasks in groups


  • the first 10 groups of tasks in taskbar (including the not initialized ones but that are fixed in taskbar), when showing tasks in groups - while holding WinKey, the list of tasks of a determined group related to number chosen is opened, clicking repeatedly in the same number chosen you can select a determined item in list and releasing WinKey you toggle status of chosen item in that group
| improve this answer | |

this is not 1 key but is faster than it looks. Think you could do it with one key if you have AUTOHOTKEY, but I didn't bother. Anyway:

  1. launch task manager (I already have a desktop shortcut for this, define one if needed)
  2. go to application tab if not already there (ctrl-pageup/ctrl-pagedown)
  3. select all by press home, then ctrl-shift-end to select all (ctrl-a doesn't seem to work unfortunately)
  4. shift-F10 (equivalent to right click)
  5. X for maximize.

Note, unlike what you see in some posts, windows-shift-M does not maximize all, it is 'undo the previous minimize all', i.e. windows go back to how they were

| improve this answer | |
  • AutoHotKey script (uses fact that ctrl-alt-U launches task manager via windows desktop shortcut). ^!=:: SetKeyDelay,1000 Send ^!u SetKeyDelay,10 Send {home}^+{end} Send +{F10} Send X return – geoffy Apr 10 '15 at 22:51
  • you don't need to make a custom keyboard shortcut to launch the task manager on windows. Ctrl+Shift+Esc is the standard system defined keyboard shortcut to launch task manager in all versions of Windows and instead of Shift-F10 you could use the menu key that is on the left of the secondary ctrl key on the right side of most keyboards. Also thanks for the AutoHotKey script and this awesome tip. – Ghos3t Mar 8 '18 at 9:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.