将窗口粘贴到其他窗口

发布于 2024-09-12 07:35:34 字数 346 浏览 5 评论 0原文

我想开发一个可以粘到其他的Windows程序 窗户。

我正在寻找最快的方法来做到这一点。我可以通过 WinAPI 获取所有内容 有关目标窗口的信息并将我的窗口移动到合适的位置 然后嗅探目标窗口的Windows消息来搜索调整大小移动窗口,然后移动我的窗口再次。但我不知道什么是最简单的良好工作方式(也许在 .NET 上?但我不喜欢 .NET 中的答案,我喜欢免费框架)。

我想粘在目标窗口的顶部、底部、左侧、右侧,但这也许没关系。

谁能帮我解决这个问题吗? 谢谢。

I want to develop Windows program who can stick into other
window.

I searching fastest-way to do this. I can get by WinAPI all
information about target window and move my window into good location
and after it Sniffing Windows Messages of target window to searching resize or move window and after this doing move my window again. But i don't know what is a simplest good working way (maybe somewhat on .NET? But i don't preffer answers in .NET i like free framework's).

I want to stick on the top, bottom, left, right of the target window, but this maybe never mind.

Can anyone help me something with this problem?
Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

芯好空 2024-09-19 07:35:34

我使用DLLInjection进入目标Windows进程,使用winapi调用创建了一些钩子,并通过XML通过Message Pipe将此值传输到其他应用程序坚持这个窗户。

I used DLLInjection to get into target windows process, created some hooks using winapi calls and by XML over Message Pipe transporting this values to other application who stick to this windows.

著墨染雨君画夕 2024-09-19 07:35:34

您基本上需要做两件事:

  1. 获取您的应用程序应该粘贴的所有窗口的列表,以及它们的位置/尺寸。
  2. 监听应用程序主窗口的移动事件,如果在任何时候您的窗口足够接近#1 中的任何相关窗口,您可以自行移动它以使它们对齐。

您可以在 Win32 API 或 .Net 中执行这两项操作。你只需要一个好的标准#1。例如,桌面边界内的所有顶级可见窗口。

可能希望将桌面本身包含在上面的列表中,以便您的应用程序也粘在桌面的边缘。

You basically need to do two things:

  1. Get a list of all windows to which your app is supposed to stick, and their locations/dimensions.
  2. Listen to your application's main window's move event and if at any point your window gets close enough to any of the relevant windows from #1 you move it yourself so that they align.

You can do both in Win32 API or with .Net. You just need a good criterion for #1. Like, for example, all top level visible windows that are within the desktop's boundaries.

Might want to include the desktop itself in the list above, so that your app sticks to the edges of the desktop as well.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文