As a two-monitor user at work, I\'ve noticed that applications behave differently with regards to what monitor they open on (primary or secondary monitor, the last monitor the a
One thing to consider is that the monitor configuration might have changed inbetween invocations of the application (e.g., running on a laptop that at times might be docked and uses an external monitor). Make sure that your application is placed in the visible range.
As for APIs, there is the System.Windows.Forms.Screen class that gives you some of that information.