delphi - 如何让我的控制台应用程序接收窗口消息?

标签 delphi winapi windows-messages

我需要在控制台应用程序中编写一个消息处理程序来处理接收到的消息。例如,我注册 WM_Test 并将其发送到我的控制台应用程序,如下所示:

var
  H: THandle;
begin
  H:= FindWindow('ConsoleWindowClass', nil);
  PostMessage(H, WM_Test, 0, 0);
end;

现在我希望当我在控制台应用程序中收到此消息时显示一个消息框。

我可以在控制台程序中使用 PeekMessage 或 AllocateHWND 吗?

我知道我可以使用 pipe 来完成这项工作,但我想知道是否可以使用窗口消息来做到这一点。

最佳答案

是的,你可以。使用 AllocateHWND 创建窗口句柄。然后,您可以设置各种属性(例如名称),以便您可以使用 FindWindow 找到它。

关于delphi - 如何让我的控制台应用程序接收窗口消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4240263/

相关文章:

delphi - 如何将问题步骤记录器 (psr) 集成到我的应用程序中?

cocoa - 如何在屏幕上的特定点找到窗口以进行屏幕截图/屏幕录制?

c++ - 为什么不手动发送 WM_PAINT

delphi - 鼠标拖出控件边界后,控件如何接收鼠标事件?

delphi - 如何使用 FireMonkey 创建托盘图标?

delphi - 在 Delphi 中编辑文本文件

delphi - 如何将文本作为我的拖动光标?

c++ - 处理 WM_ENDSESSION 的正确方法?

windows - 有什么办法可以得到 future 点的 UTC 时间转换?

c - 使用基于命令的编译器与 Windows 消息交互