3


我在 Win7 64 位机器上使用 .NET 4.0。
当我“专注”在 Skype 中的群聊时,我试图获取群名称。当我专注于群聊时,我收到 ContactsFocused(string Username) 回调是用户名的空字符串。回调被执行,但参数为空。我写的代码:

m_skype = new Skype();
....
 m_skype.ContactsFocused += Skype_ContactsFocused;
....
 private void Skype_ContactsFocused(string Username)
 {
        //Console.WriteLine("Skype_ContactsFocused is {0}", Username);
 }

当关注单个联系人时,此代码工作正常,我在 Skype_ContactFocused 回调中收到一个通知,其中包含正确的名称作为参数,但在群聊中此名称为空。我的问题是有没有办法获得“重点”组名?
谢谢

4

1 回答 1

2

我知道这是一个很晚的回应,但这是您获得当前焦点组名称的方法:您必须读出用户名,而不是读出用户名m_skype.ActiveChats[1].Topicm_skype.ActiveChats[1].FriendlyName如果您希望看到朋友的屏幕名称与他们的登录用户名,您还可以读出。你的中断应该是这样的:

private static void Skype_ContactsFocused(string Username)
{
    //Console.WriteLine("Skype_ContactsFocused is {0}", Username);
    Console.WriteLine("Skype_ContatsFocused is " + ((m_skype.ActiveChats[1].Topic != "") ? m_skype.ActiveChats[1].Topic : m_skype.ActiveChats[1].FriendlyName));
}

请注意,尝试将聊天集中在默认名称(名称列表是主题)的聊天中,程序可能无法正确注册它。如果存在具有相同主题名称的聊天,也会发生这种情况。

我希望这对你仍然有用,即使已经一年多了:-)

于 2016-05-22T18:19:56.643 回答