【问题标题】:'Click and chat' Whatapp'点击并聊天' Whatsapp
【发布时间】:2021-01-16 21:11:59
【问题描述】:

我编写了一个小型 c# 应用程序,通过 WhatsApp 的“点击和聊天”功能向我的亲戚发送消息。

[DllImport("user32.dll")]
static extern bool SetForegroundWindow(IntPtr hWnd);

private void webBrowser(string URL)
{
    WebBrowser webBrowser2 = new WebBrowser();
    webBrowser2.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser1_DocumentCompleted);
    webBrowser2.Navigate(URL);
}

private void button1_Click(object sender, EventArgs e)
{           
    string s = HttpUtility.UrlEncode("https://www.funda.nl//koop/berkhout/huis-41021218-bobeldijk-26/").Replace(@" href=/", "") + "\n");
    webBrowser("https://wa.me/1234567 + "?text=" + s);
}

Process bProcess = Process.GetProcessesByName("WhatsApp").FirstOrDefault();
if(bProcess != null)
{                   
    IntPtr p = bProcess.MainWindowHandle;
    SetForegroundWindow(p);
    SendKeys.Send("{ENTER}")
}

以上 工作一半。它会在我的计算机上打开 WhatsApp 应用程序并将消息放入框中,但消息不会自动发送,因此显然 SendKeys 命令不起作用。如果我尝试使用 SendKeys 命令发送文本和输入键,例如“记事本”工作正常。 所以实际上我正在寻找一种自动化Whattapp“发送”命令的方法,这样消息就会自动发送。

由于 Windows 10 不允许发送密钥,我已更改注册表

**Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUA 为 0

我尝试过的不是上面的 SendKeys

const int WM_KEYDOWN = 0x100;
const int WM_KEYUP = 0x101;
const Int32 VK_RETURN = 0x0D;

        PostMessage(p, WM_KEYDOWN, new IntPtr(VK_RETURN), new IntPtr(0));
        PostMessage(p, WM_KEYUP, new IntPtr(VK_RETURN), new IntPtr(0));

不幸的是,两者都不起作用。 有谁知道如何自动发送“点击聊天”消息而无需手动点击“发送”按钮?

【问题讨论】:

    标签: c# whatsapp


    【解决方案1】:

    好的,我确实为感兴趣的人提供了解决方案。我已将“SendKeys”部分移动到一个定时器实例,该实例在消息发送到“https://wa.me/”后启用,延迟为 5 秒。 在“按下”发送按钮后,计时器将无法使用。一旦我需要我的应用发送消息,只需启用计时器即可。

    不是一个非常干净的解决方案,但它有效

    【讨论】:

      猜你喜欢
      • 2021-01-20
      • 1970-01-01
      • 1970-01-01
      • 2020-09-28
      • 2019-09-14
      • 1970-01-01
      • 2020-07-15
      • 1970-01-01
      • 2020-03-07
      相关资源
      最近更新 更多