C# 分屏显示窗口
近期接到个需求,要求在指定显示器屏幕启动应用程序。
在网上查阅了下资料,可以通过System.Windows.Forms.Screen.AllScreens获取显示器列表。
但是,如何设置应用程序启动后在哪个屏幕显示没有一个好的办法。
只找到一个 bool SetWindowPos(IntPtr hWnd , IntPtr hWndInsertAfter , int x , int y , int cx , int cy , uint uFlags);
但是问题很多,最主要的是这个函数的第一个参数是窗口句柄,我是通过Process中的MainWindowHandle来获取,但是有的应用程序,MainWindowHandle只是刚启动的时候的一个loading窗口,并不是最终显示的实际工作窗口。
有人做过类似的需求吗?