Skype4COM获取所有最近的聊天记录
问题描述:
我已经创建了一个代码来获取所有联系人,但现在我想要获取所有聊天记录组。如果您从未使用过Skype4COM API,请不要再阅读本主题。Skype4COM获取所有最近的聊天记录
用于收集所有的针数
try
{
for (int i = 0; i < skype.HardwiredGroups.Count; i++)
if (skype.HardwiredGroups[i + 1].Type == TGroupType.grpAllFriends)
{
for (int j = skype.HardwiredGroups[i + 1].Users.Count; j > 0; j--)
listBox1.Items.Add(skype.HardwiredGroups[i + 1].Users[j].Handle);
button17.Enabled = false;
break;
}
}
catch (Exception eoi){}
任何想法,建立组的列表?
答
private List<string> getChats(Skype skype)
{
List<string> r = new List<string>();
foreach (Chat c in skype.Chats)
try { r.Add(c.Name); } catch (Exception) {}
return r;
}
我们必须尝试{} catch {},因为Skype会产生无效聊天,如果我们尝试访问它们,会引发COMException。
的列表框:
foreach (Chat c in skype.Chats) {
try
{
listBox1.Items.Add(c.Name);
} catch (Exception) {}
}
然后,你可以在列表框中使用skype.get_Chat(value)
在每个项目上。
嗯非常好,但现在我怎么可以将它们全部添加到列表框中,作为我的其他代码来获取联系人。 – 2012-04-15 17:33:39
编辑在最后添加示例。但仅供参考,这将是唯一的聊天名称,而不是您在UI中看到的名称。如果你想要UI名称,你必须使用'skype.Chats [0] .FriendlyName'(但你不能使用具有'FriendlyName'值的'skype.get_Chat()'):) – Josh 2012-04-15 17:42:16
嗯@Josh这是唯一的问题是我需要它来建立友好名称列表,PS:感谢您的帮助。这里没有多少人知道SKYPE4COM很多或什么,因此很难找到答案。 – 2012-04-15 18:09:32