だから私は MSNP (Windows ライブ メッセンジャー) クライアントを構築しています。そして、私はこの機能のリストを持っています
public enum UserCapabilities : long
{
None = 0,
MobileOnline = 1 << 0,
MSN8User = 1 << 1,
RendersGif = 1 << 2,
....
MsgrVersion7 = 1 << 30,
MsgrVersion8 = 1 << 31,
MsgrVersion9 = 1 << 32,
}
完全なリストはこちらhttp://paste.pocoo.org/show/383240/
サーバーは各ユーザーの機能を長整数としてクライアントに送信します。これを取得して UserCapabilities にキャストします。
capabilities = Int64.Parse(e.Command.Args[3]);
user._capabilities = (UserCapabilities)capabilities;
これで問題ありません。少なくとも 1 人のユーザー (ケイパビリティ値が 1879474220) があれば、次のことができます。
Debug.WriteLine(_msgr.GetUser(usr).Capabilities);
これは出力されます
RendersGif, RendersIsf, SupportsChunking, IsBot, SupportsSChannel, SupportsSipInvite, MsgrVersion5, MsgrVersion6, MsgrVersion7
しかし、(3055849760)の能力値を持つ別のユーザーと同じことをすると、同じ数値が出力されます
3055849760
私が見たいのは、他のユーザーと同じように、機能のリストです。
これには非常に正当な理由があると確信していますが、Google にこの質問をどのように表現しようとしても、答えが見つかりません。
私を助けてください :)