启动应用程序并将其发送到第二台显示器?

启动应用程序并将其发送到第二台显示器?,第1张

启动应用程序并将其发送到第二台显示器?

由于该窗口不是您的窗口,因此只能通过调用Windows API来移动它。您将必须执行以下 *** 作:

  • 启动该过程。

  • 使用

    FindWindow
    检索的窗口句柄。如果该窗口尚不存在,则表明该进程尚未创建。睡眠500毫秒,然后重试。(但是不要进入无限循环;如果在合理的超时后找不到窗口,请停止。)

  • 使用

    SetWindowPos
    改变窗口的位置。

如果您不知道窗口的标题,则不能使用

FindWindow
。在这种情况下,

  • 启动流程并通过检索获取流程句柄

    Process.Handle

  • 使用

    EnumWindows
    检索所有窗口。对于每个窗口,用于
    GetWindowThreadProcessId
    检查它是否属于您的进程。如果没有任何窗口属于您的进程,请等待并继续尝试。

  • 使用

    SetWindowPos
    改变窗口的位置。

当然,您可以

Screen.AllScreens[n].WorkingArea
用来检索所需屏幕的位置和大小,然后可以相对于该窗口定位窗口。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4928603.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-12
下一篇 2022-11-12

发表评论

登录后才能评论

评论列表(0条)

保存