【问题标题】:Receiving the same message twice两次收到相同的消息
【发布时间】:2016-08-20 20:16:47
【问题描述】:

嘿,我正在构建一个 skypebot,但我无法弄清楚为什么我会收到 2x 的消息

这是我正在使用的代码

        private void Form1_Load(object sender, EventArgs e)
    {
        client = new Skype();
        client.MessageStatus += Client_MessageStatus;
        AttachToSkype();
    }
        private void Client_MessageStatus(ChatMessage pMessage, TChatMessageStatus Status)
    {
        MessageBox.Show(pMessage.Sender.Handle + " Says: " + pMessage.Body);
    }

感谢您的宝贵时间-特里斯坦

【问题讨论】:

  • 我认为MessageStatus 事件被多次订阅。这不应该发生。完成工作后尝试unsubscribing此活动。
  • “AttachToSkype”有什么作用?
  • @Jauch 检查Skype是否打开并尝试附加

标签: c# skype skype4com


【解决方案1】:

每次消息状态发生变化时都会调用MessageStatus 事件。
您需要检查 TChatMessageStatus。应该是 cmsReceived。

private static void Skype_MessageStatus(ChatMessage pMessage, TChatMessageStatus Status)
{
       if (Status != TChatMessageStatus.cmsReceived) return;

       MessageBox.Show(pMessage.Sender.Handle + " Says: " + pMessage.Body);
}

【讨论】:

    猜你喜欢
    • 2017-11-10
    • 2021-05-26
    • 2010-10-30
    • 2017-10-05
    • 2017-02-05
    • 2018-12-31
    • 1970-01-01
    • 2016-05-04
    相关资源
    最近更新 更多