【问题标题】:Sending simulated click via WebBrowser in C# to flash object embedded in HTML通过 C# 中的 WebBrowser 将模拟点击发送到嵌入在 HTML 中的 Flash 对象
【发布时间】:2012-03-28 00:39:06
【问题描述】:

在我正在使用 WinForms 中的 WebBrowser 控件访问的站点上,我无法找到一种方法将模拟点击发送到 flash .SWF 应用程序。

虽然我已经阅读了无数关于这个主题的帖子,但似乎没有多少信息在互联网上流传。我在这里找到的在技术上为我的问题提供答案的唯一资源是:

Reading Packets - 此链接建议读取从 flash 应用程序发送的数据包,这可能是我唯一可行的解​​决方案。

要求:我不希望直接与 ActionScript 沟通以获得我的结果。我只是想让它盲目地点击 Flash 电影,然后等待事情发生。

如果不可能,我还是希望得到反馈。谢谢!


更新:(2012 年 3 月 23 日 - 2012 年 3 月 23 日)

由于没有反馈,我想我会发布更新

我最后只是嗅探了 .SWF 发送的数据包,然后通过 webBrowserObject.Navigate 方法发送了相同的数据。还是谢谢!


更新:2012 年 3 月 31 日 - 2012 年 3 月 31 日

结束了我关于是否使用 SendMessage 或 PostMessage 在不劫持鼠标的情况下向窗口发送实际点击的旧争论。将物理点击和模拟点击作为程序的选项/功能似乎是有益的,所以我最终也通过 PostMessage 实现了物理点击。我所做的是:从 WebBrowser.Handle 中抓取句柄,遍历句柄,在“Internet Explorer_Server”句柄处停止循环,然后 PostMessage() 在指定的坐标处双击它。

我希望此更新对正在阅读如何将点击发送到 WebBrowser 控件而不调用对 dom 元素的模拟点击的任何人有所帮助。

【问题讨论】:

标签: c# browser


【解决方案1】:

【讨论】:

  • 哇,太好了!我实际上并没有尝试过 System.Windows.Forms.SendKeys,尽管我已经在使用 System.Windows.Forms 命名空间!我相信我尝试的是导入一个 .dll 来完成同样的事情。希望那时我真的会想到这一点。谢谢一百万。
  • Sendkeys 往往是 hacky、丑陋和讨厌的;有时 - 不总是,当然不总是但有时 - 这正是医生所要求的。
【解决方案2】:

发送密钥的方式不正确,是否有c#的sdk或api

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-04-28
    • 2010-10-06
    • 2011-02-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-09
    相关资源
    最近更新 更多