【问题标题】:Trying to send data from WPF application to Web Page on any Web Browser尝试将数据从 WPF 应用程序发送到任何 Web 浏览器上的网页
【发布时间】:2012-10-12 04:10:25
【问题描述】:

可能重复:Directly sending keystrokes to another process via hooking

如果我的问题的语气有点糟糕,我想道歉。我被卡住了。 好的,我正在制作一个程序,将数据从 WPF 应用程序传输到 VB 6 应用程序和网页。根据配置,它将调用一个过程来发布数据。我已经完成了 VB 6 的部分,但是网页出现了一个大问题,因为:

  • 该过程必须适用于所有已知的浏览器。
  • 我不允许将数据作为 Web 请求发送。
  • 我无法控制要使用的网站。
  • 我也不允许使用任何第三方软件

我已经尝试了以下方法:

  • 使用 tab 键和字符键的 keyup 和 keydown 发送消息
  • 为要发送的字符串发送带有 postmessage 的消息
  • 以上的消息后版本
  • 用于以 HTML 文档形式发送数据的 MSHTML
  • SendKeys(虽然还没有深入研究过)

这是发送消息的代码(最接近我所有的尝试)

   IntPtr window = User32_Methods.FindWindow(null, "Test Site");
        if(window!=IntPtr.Zero)
        {
            MessageBox.Show("asdasd");
            User32_Methods.SendMessage(window, Send_Message_Constants.WM_LBUTTONDOWN, IntPtr.Zero, IntPtr.Zero);
            User32_Methods.SendMessage(window, Send_Message_Constants.WM_LBUTTONUP, IntPtr.Zero, IntPtr.Zero);
            for (int count = 0; count < 15;count++)
            {
                User32_Methods.PostMessage(window, Send_Message_Constants.WM_KEYDOWN, (IntPtr) Send_Message_Constants.VK_TAB, IntPtr.Zero);
                User32_Methods.PostMessage(window, Send_Message_Constants.WM_KEYUP, (IntPtr)Send_Message_Constants.VK_TAB, IntPtr.Zero);
                foreach(char a in "adasdasdasd")
                {
                    User32_Methods.PostMessage(window, Send_Message_Constants.WM_KEYDOWN, (IntPtr)Send_Message_Constants.VK_A, IntPtr.Zero);
                    User32_Methods.PostMessage(window, Send_Message_Constants.WM_KEYUP, (IntPtr)Send_Message_Constants.VK_A, IntPtr.Zero);
                }
            }
        }

我想在堆栈中问你们,因为你们解决了我在这里遇到的大部分问题。

【问题讨论】:

  • 你有所有已知浏览器的列表吗?
  • IE、Firefox、Chrome、Rockmelt 和 Safari。首选 Chrome 和 Firefox。
  • 我还能想到更多。歌剧一开始。还有其他的。此信息需要在问题中。
  • 感谢您的加入。我会记住这一点的。

标签: c# asp.net wpf vb6 pinvoke


【解决方案1】:

我知道这可能不是要走的路,但是我看到你会尝试使用发送密钥,所以也许你可以添加一些你自己的 .js,用你的逻辑并执行它。由于发送键类似于将数据输入表单/单击按钮/或其他方式,因此 js 例程可能会帮助您....

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-26
    • 2020-10-16
    • 2021-11-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多