标题栏定制

发布于 2024-12-20 19:01:45 字数 284 浏览 1 评论 0原文

我正在尝试构建一个 C++ 程序来自定义另一个窗口标题栏,添加彩色文本和图标。我需要自定义的窗口位于闭源程序中。

现在我只能使用 SetWindowText 更改文本,但无法找到获得该级别自定义级别的方法:

Razor Ultima Online 定制标题栏

该图片来自由 Razor(一个闭源帮助程序)定制的 Ultima Online 标题栏。

感谢您的阅读。

I'm trying to build a c++ program that customizes another window title bar, adding colored text and icons. The window I need to customize is in a closed source program.

Right now I can only change the text with SetWindowText, but was unable no find a way to get that level of customization:

Razor Ultima Online Customized Titlebar

The image is from Ultima Online title bar being customized by Razor, a closed source helper program.

Thanks for reading.

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

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

发布评论

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

评论(2

小ぇ时光︴ 2024-12-27 19:01:46

其他进程窗口的自定义绘图和子类化需要 DLL 注入和挂钩来检测窗口创建,并使用子类化来处理非客户端绘图和单击/命中消息。

Custom drawing and subclassing of other process windows requires DLL injection and hooking to detect the windows creation with subclassing to handle the non client drawing and click/hittest messages..

魂牵梦绕锁你心扉 2024-12-27 19:01:46

您应该将DLL注入client.exe进程,然后覆盖主窗口函数(WndProc),或者创建新窗口并使原始客户端窗口成为您窗口的子窗口。

在标题上书写彩色文本本身就是一项不简单的任务,特别是如果您想要支持 Win7\Vista(不过使用 GDI 也可以)。

You should inject you DLL into client.exe process, then override main window function (WndProc), or create new window and make original client's window to be the child of your window.

Writing colored text on the caption is non-trivial task itself, especially if you want support Win7\Vista (however it's doable with GDI).

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