I have a Windows XP workstation with dual monitors, one of which is a touchscreen. The regular monitor, keyboard and mouse are about 12 feet away from the touchscreen. The regular monitor has been configured as the primary monitor and the desktop has been extended to the touchscreen.

Is there a free program that I can use to force an application (and any other windows it generates) to only run on the touchscreen monitor? It's quite annoying when Windows XP decides to display the newly generated window on regular monitor behind you (and with no task bar on the secondary monitor you can't do the "Right-Click -> Move" trick).


Not free, but there are trials of a couple utilities that will help you with this (as well as many other handy multiple-monitor options):

Check out:

UltraMon is a utility for multi-monitor systems, designed to increase productivity and unlock the full potential of multiple monitors.

  • efficiently move windows and maximize windows across the desktop
  • manage more applications with the Smart Taskbar
  • control application positioning with UltraMon Shortcuts
  • multi-monitor support for desktop wallpapers and screen savers
  • mirror your main monitor to secondary monitors for a presentation

The Window Location feature allows you to specify which monitor you would like selected applications to open on. You can customize this by specifying actions like maximize, centre, span or 'Run HotKey'. You can have all windows from the selected application open on the specified monitor, or only the first window.

For some other ideas, also see:

  • These may not be able to control all child windows spawned by the main process, unfortunately, but there's really NO good way to do that and be sure that it'll work 100% of the time. – Shinrai Oct 17 '11 at 18:12
  • True, as you never know if the child process is actually a child or just another (separate) process launched by the program, but these both do a pretty good job at it from my experience. :) – Ƭᴇcʜιᴇ007 Oct 17 '11 at 18:21
  • 1
    Yeah, if you have something that's opening a ton of its own windows (like, a stock charting app or something) DisplayFusion is probably a better bet, but they both are pretty good if you don't have anything trying to go bananas with windows. – Shinrai Oct 17 '11 at 19:18

For Win XP or higher you can use a freeware tool nircmd to launch and move main window to screen of your choice using x,y screen location. For example here is a script file I setup for starting vncviewer.exe on a different monitor, here is the ncl script file c:\path4\vnc.ncl (uncomment commands depending on what you want):

;;  script to run application and move windows to adjacent monitor
;;  written for 1366x768 builtin display (LHS,primary) + 1280x1024 digital display (RHS,secondary) setup
    exec show "C:\path1\VNC\vncviewer.exe" "c:\path2\host1.vnc"
;;  you may need to add/adjust delays
    wait 1000
;;  full screen on digital 1280x1024 display to right of 1366x768 builtin display
;;  move to second display and resize main window (you can do it by window title if process name is not unique - see "title" or "stitle" option in help file)
;;  These parameters are apply to my setup, so change to match your screen setup: 1366 0 1280 1024
    win setsize process "vncviewer.exe" 1366 0 1280 1024
    ; wait 500
    win maximize process "vncviewer.exe"

Create a shortcut to run "c:\path3\nircmd.exe script c:\path4\vnc.ncl" (customize path* values for your setup).

A multiprocess application (eg chrome.exe) use "sendkeypress alt+tab" and use "win setsize active ...".

See also StartX mentioned in answers for another SO question

Your Answer

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