2012-04-13 1 views
0

すべての連絡先を取得するコードを作ったが、今はすべてのチャットグループを取得したい。 Skype4COM APIを一度も使用していない場合は、このトピックをもう読まないでください。Skype4COM最近のすべてのチャットを返信する

はすべてcontacs

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){} 

グループのリストを構築するための任意のアイデアを収集するために使用されますか?

答えて

1
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; 
} 

Skypeは、私たちがアクセスしようとするとCOMExceptionをスローする無効なチャットを生成するので、{} catch {}を試す必要があります。

foreach (Chat c in skype.Chats) { 
    try 
    { 
     listBox1.Items.Add(c.Name); 
    } catch (Exception) {} 
} 

次に、あなただけのリストボックス内の各項目にskype.get_Chat(value)を使用することができます。リストボックスの

+0

非常にいいですが、連絡先を取得するための他のコードが行ごとにリストボックスにそれらをすべて追加できるようになりました。 –

+0

最後に例を追加するように編集しました。しかし、ちょうどFYI、それはあなたがUIで見る名前ではなく、ユニークなチャット名になります。 UI名が必要な場合は、 'skype.Chats [0] .FriendlyName'を使う必要があります(ただし、' FriendlyName'の値で 'skype.get_Chat()'を使うことはできません):) – Josh

+0

Hmm @Joshそれは唯一の問題です。友好的な名前のリストを作成する必要があります。PS:ありがとうございました。多くの人がSKYPE4COMについて多くのことを知っているわけではないので、答えを見つけるのは難しいです。 –

関連する問題