使用C#在Skype上错过聊天

时间:2013-02-13 06:47:47

标签: c# skype4com

我试图将未读的聊天从skype显示到我的c#应用程序。我使用int msgCount=skype.MissedMessages.Count获取了未读消息的数量,并尝试了给定的函数skype.MissedChats.ToString()skype.get_Message(msgCount).ToString()。但它们显示“System._ComObject”。任何建议???

2 个答案:

答案 0 :(得分:4)

答案很简单,我得到如下......

           for (int i = 0; i < skype.MissedMessages.Count; i++)
            {
                if (skype.MissedMessages[i + 1].Type == TChatMessageType.cmeSaid)
                {
                    string unreadMessage = skype.MissedMessages[i + 1].Body;
                }
             }

可以通过skype.MissedMessages[i + 1].Sender

阅读其他详细信息,例如发件人姓名

答案 1 :(得分:1)

我猜它会要求你使用索引器来实际显示一个特定聊天消息的内容。现在你正在将ChatCollection转换为字符串,我猜他们没有实现它,所以只返回this.GetType().Name

我猜测索引器会像这样工作:

List<string> messages = new List<string>();
foreach (Char c in skype.MissedChats)
{
    try
    {
        messages.Add(c.Name);
    }
    catch (COMException) { } // Invalid chat
}