54

I'm using Windows 8.1, which has much better multiple monitor support than Windows 7 (sort of). However when I'm in a full-screen app on one monitor, and I go to the Start menu on the other and open a desktop app, it opens on the opposite monitor because of it being on that one last time the app was used.

This suspends the full-screen app and switches to the desktop view on that monitor. I then have to drag the desktop app to the other monitor which I didn't have my mouse pointer near in the first place, then switch back to the full-screen app on that monitor by going to the upper-right corner.

This is so incredibly irritating, every time I plug in my laptop to my second monitor and try to use it, this happens. Not to mention whenever I have Netflix or any kind of video in the second monitor and it just randomly stops playing when I'm trying to work on the other screen.

Most likely there is going to have to be a third-party application to install to do this, right? I would really prefer if it was free, as this was less annoying in Windows 7 when the application would only open on top of the other that was on that monitor. This is one of the maybe two annoying things I don't like about Windows 8/8.1. Everything else is fantastic, to be honest.

4
  • The same software that worked on Windows 7 will work on Windows 8.1 have you tried any of those? This question has two possible solutions.
    – Ramhound
    Apr 5 '14 at 15:36
  • Are you talking about 2 "windows only" apps or are you talking about a metro app and a windows app. Hopefully you know the difference but I've noticed metro apps tend to screw with stuff in unpleasant ways myself so that could be what you're actually referring to. Either way what I mentioned below may help but metro apps are still a nuisance.
    – Codezilla
    Jun 20 '14 at 10:57
  • Possible duplicate of How to make an application remember the last place in multiple monitors
    – TT--
    Jul 11 '19 at 21:47
  • 1
    Worked for me on win10: (1) un-maximize (restore) a window (2) move it to the screen of interest without maximizing (3) close app (4) open app (5) maximize. The conclusion is, when window is maximized its screen state wouldn't be saved properly.
    – Rabash
    Dec 16 '19 at 17:20
39

After experimenting with the shortcuts in Codezilla's answer if you press Windows+Shift+arrow keys you instantly jump it to another screen.

1
  • This does describe a workaround but it does not solve the Windows 10 Issue.
    – Tom
    Mar 10 at 9:45
17

I tried this successfully:

  1. Open the program.
  2. Move it to the monitor on which you would like it to open by default.
  3. Hit the Windows key + Shift + Enter.

From now on, it should open each time on the monitor of your preference.

9
  • 4
    Source for this keyboard shortcut? I downvoted as I speculate that win+shift+enter does nothing. Jan 12 '19 at 14:12
  • @CleverLittleMonkey - yeah but it seems to work, even when the program is launched by another program on a different screen.
    – StingyJack
    Feb 12 '19 at 16:19
  • I think this one works, although on face it doesn't do anything, but somehow it fixes the application on just one screen. Fantastic! Mar 1 '19 at 21:11
  • 17
    Didn't work for me, Windows 10
    – Brionius
    Aug 26 '19 at 17:40
  • 4
    Not working for me on Win10 1903.
    – Saeb
    Oct 30 '19 at 3:42
15

I'm not sure of a way to change the default positioning aside from closing the app on the screen you want it to appear on and then when you open it again it "might" be on the right screen.

That isn't always the case though as some apps have been programmed to load a certain way. However, as a quicker way to move stuff from one screen to the other, I use a shortcut that makes it faster that dragging stuff around with the mouse. When you have the app in focus that you want to move (if you just opened it and haven't clicked other places, it's in focus). Hold down the windows key and use the cursors to move the window around where you want it.

If it's on the left monitor and you want it on the right, hold down windows key + press right arrow key and it'll shift across the screen. Depending on what state the window is in (fullscreen/windowed) may depend on how many key presses it takes to move it but you can play around with it to get a feel for what the key presses do.

  • Windows key + up arrow : maximizes the window or undoes minimizing.
  • Windows key + down arrow : minimizes the window and makes windows focus be on whatever application was opened right before, or undoes maximizing.
  • Windows key + left/right : will move the window from snapped left to unsnapped to snapped right to snapped left on the next screen, etc.
  • Windows key + shift + left/right : will move the window to another screen in the same relative position.
  • Windows key + shift + up: Will maximize the window vertically only.
  • Windows key + left/right followed by Windows key + up/down: Will snap/unsnap the window in a corner.
1
  • This does describe a workaround but it does not solve the Windows 10 Issue.
    – Tom
    Mar 10 at 9:45
9

In the event of all the above solutions didn't help then mark the monitor which you want to open the application as Main Display.

Steps: Display settings - Multiple Displays - Make this my main display

2
  • 1
    This is correct answer, you need to select desired display at display settings first and then scroll down and check "Make this my main display". Here's a screenshot
    – Buksy
    Aug 27 '18 at 14:48
  • 11
    But that just tells Windows which monitor homes the Start Menu Bar, not a per-application "run on this particular window."
    – Pete Alvin
    Nov 2 '19 at 7:31
9

Here is how I fixed it in Windows 10

  1. Download and install Microsoft PowerToys for Windows: https://github.com/microsoft/PowerToys/releases (I am running 0.16.1 by downloading installing 0.16.0 version and 0.16.1 patch)

  2. PowerToys Settings > FancyZones > [Edit zones]: configure the layout as one column or row or whatever and disable "show space around zones". You'll have to do this for each monitor individually by dragging the settins window to another monitor

  3. PowerToys Settings > FancyZones: Enable "Move newly created windows to their last known zone"
  4. Drag the application you want to open in a specific screen over there, and when you're in that screen assign it to the "zone" by pressing/holding [shift] and then releasing the window into that screen.

If you close and open an app it will open open into the last zone you've assigned it to, which in this setup is your screen

I'm hoping it will work on Windows 8.1 aswell.

3
  • thanks for the tool! Microsoft is indeed making windows much more capable lately.
    – KhaimovMR
    Apr 12 at 18:06
  • Thanks for sharing this!
    – Alvin
    Jun 25 at 5:52
  • Works for Outlook, not working with my WPF application created using Visual Studio.
    – W.M.
    Aug 12 at 18:14
2

The other answers didn't work for me. Here's how I fixed it, with a two monitor setup:

  1. Close application
  2. Disabled the monitor that was 'wrong'
  3. Open the application, forcing it to open on the 'correct' monitor
  4. Close application
  5. Re-enable 2nd monitor
1

There is an application that I used to use for multi-monitor task bar in Windows 7 called displayfusion. I believe the free version includes the feature you'll need which name escapes me but in essence it allows you to open a program on a specific monitor. It takes a little bit of fiddling but once you've set it up it'll force that program (I don't believe it works with apps) to open on a specific monitor. Hope this helps.

0

If your program is a Unity-made game (who compiled with that option supported), you can run it once with -show-screen-selector parameter and select the correct monitor.

Once you have done that the game remember which screen to run on.

Edit:

The same can be achieved by using -adapter 2 parameter.

-2

Try PrgLnch.
PrgLnch is a program designed in Autohotkey as a quick program launcher.
Comes with help file with context help.
Support for:

  • Batch processing
  • Selectable Resolutions
  • Ini file
  • Multiple Displays
  • Http Download for update
  • Optional LAA patch
  • And more...
0

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