Linux 的 PInvoke GetWindowRect 等效项
Posted
技术标签:
【中文标题】Linux 的 PInvoke GetWindowRect 等效项【英文标题】:PInvoke GetWindowRect Equivalent for Linux 【发布时间】:2020-11-22 09:19:14 【问题描述】:我正在尝试编写一个使用 C# .Net Core 输出窗口位置/大小的程序。我已经使用基本上使用 User32 dll 的 PInvoke nuget 包为 Windows 完成了此操作。我正在尝试做同样的事情,但对于 linux 发行版。
有没有人对此有所了解,或者他们能指出我正确的方向吗?我已经下载了 Xlib nuget 包,但我真的不知道如何使用它。
我想在 Linux 上我可以使用 Process.MainWindowHandle 获取所有指针,但是我不确定我需要将这些句柄传递给哪些 API 才能取回 RECT 对象。
我想做一些类似于 xdotool 在 GetWindowGeometry 方面所做的事情,但在我的 c# 应用程序中。
谢谢大家!
【问题讨论】:
【参考方案1】:您需要使用XGetWindowAttributes
和XGetGeometry
。
C# 使用示例:
XGetGeometry:https://github.com/search?q=XGetGeometry+language%3AC%23&type=Code XGetWindowAttributes:https://github.com/search?q=XGetWindowAttributes+language%3AC%23&type=Code&ref=advsearch&l=C%23&l=【讨论】:
以上是关于Linux 的 PInvoke GetWindowRect 等效项的主要内容,如果未能解决你的问题,请参考以下文章