【问题标题】:C# screenshot another application [duplicate]C#截图另一个应用程序[重复]
【发布时间】:2017-11-02 20:53:45
【问题描述】:

我想为已打开的应用程序的表单截取屏幕截图,该应用程序不在顶部,而无需将此应用程序置于顶部以捕获表单的屏幕截图! 我想在 C# 上做 我搜索了很多,我什么也没找到。 你能给出任何代码提示吗?

【问题讨论】:

  • 如果“屏幕截图”是屏幕的全部或部分图像,那么您认为这将如何工作?
  • 谢谢你们,我现在就编辑我的问题
  • 这听起来像是涉及 UI 自动化和/或可访问性 API。您对哪些操作系统感兴趣?

标签: c# background screenshot


【解决方案1】:

PrintWindow API (MSDN) 方法可以做到这一点。您可以使用 P/Invoke 从 C# 使用 API。 pinvoke.net 网站有definition you need

[DllImport("user32.dll", SetLastError = true)]
[return: MarshalAs(UnmanagedType.Bool)]
static extern bool PrintWindow(IntPtr hwnd, IntPtr hDC, uint nFlags);

你需要一个窗口句柄,你可以得到like in this SO answer

【讨论】:

    猜你喜欢
    • 2017-10-30
    • 2016-08-16
    • 2013-05-16
    • 2013-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-19
    • 1970-01-01
    相关资源
    最近更新 更多