【问题标题】:How to send a WM_CHAR Message to Firefox如何向 Firefox 发送 WM_CHAR 消息
【发布时间】:2011-12-17 04:34:35
【问题描述】:

我正在尝试从进程外应用程序发送 WM_CHAR 消息。我有 Firefox 窗口的句柄。 FF 网页设置为 Yahoo Mail,我想通过 SendMessage 或 PostMessage 填充用户名和密码。 FF 是否处理 WM_CHAR 消息,如果不处理,还有什么其他方法可以实现。

提前致谢

【问题讨论】:

  • 您将遇到的问题是小部件不是窗口控件,而是 Firefox XUL 组件。有一些方法可以使其自动化,但它们涉及学习 Firefox 编程。如果将文本插入 Yahoo 网络邮件登录页面是解决任何问题的最佳解决方案,我会感到震惊。与其告诉我们您认为解决方案是什么,不如告诉我们真正的问题?
  • @David Heffernan,好建议。让我想起了5 whys。 “你为什么要让 FF 处理 WM_CHAR?” “你为什么使用 SendMessage/PostMessage?” “你为什么要登录雅虎邮箱?”等

标签: c++ api


【解决方案1】:

FF 是否处理 WM_CHAR 消息

Visual Studio 带有 Spy++ 应用程序 (\Common7\Tools\spyxx.exe),您可以使用它来检查进程消息。如果您从您的进程发送或发布消息,您可以使用此实用程序来监视目标进程并确保消息被实际发送。

这是您要做的第一步,如果消息被发送并且您没有实现预期的行为,那么您可能在那里发布了错误消息...

【讨论】:

  • FF 不使用窗口控件,所以我认为这不会导致任何地方。
  • 正确,但它可能仍会从消息中获取键盘输入,例如顶级窗口接收消息,然后在内部路由到无窗口控件。
  • 大家好。感谢所有的答复。实际上,我没有理由对尝试自动填充用户名和密码的过程感兴趣。它只是为了有趣的运动而已。罗马感谢您的提示。我确实在 Visual Studios 6.0 中检查了 Spy++,但发现正在发送 WM_CHAR,但是在 SPY++ 中创建了两个条目。我还尝试使用 XP 附带的屏幕键盘。在任何窗口或 IE 或 FF SPY++ 中使用 OSK 时根本不显示任何 WM_CHAR ?有谁知道这是为什么?再次感谢大家的帮助。
  • 大家好,我有个好消息...我能够使用 keybd_event 填充用户名和密码。它适用于 Firefox。但是我仍然想看看 SendMessage 是否也可以工作。我只是想学点新东西……谢谢大家的回复。
  • 我报告了一个奇怪的行为...我能够向 Firefox 发送一条 WM_CHAR 消息(hwnd, WM_CHAR, 'a', 0x1);'',尤其是搜索右上角的文本字段,以及网页的文本字段部分。
猜你喜欢
  • 2022-10-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-08-19
  • 1970-01-01
  • 2023-04-05
相关资源
最近更新 更多