作者:杨忠勋
专业:计算机软件开发及应用
语言能力:TOFEL633 GRE2140
Email:zhongxunyang@yahoo.com.cn
接收消息
判断有新消息的方法就是接收的内容是否为“ text ”类型,代码如下 private void OnTextRecieved(Messenger.IMsgrIMSession s, Messenger.IMsgrUser u, string header, string text, ref bool default ) { if (header.IndexOf( "Content-Type: text/plain" ) != - 1 && u.FriendlyName != "Hotmail" ) { messageWindow.AppendText(u.FriendlyName + ": " + text + "\r\n" ); CurrentUser = u; default = false ; } }
发送消息
将你要发送的消息输入到“编辑”框,然后点“发送”按钮,“编辑”框中的内容将由如下代码发送出去: private static string header = "MIME-Version: 1.0\r\nContent-Type: text/plain;" + "charset=UTF-8\r\nX-MMS-IM-Format: " + "FN=MS%20Shell%20Dlg; EF=; CO=0; CS=0; PF=0\r\n\r\n" ; private void send_Click( object sender, System.EventArgs e) { CurrentUser.SendText(header, this .sendText.Text, Messenger.MMSGTYPE.MMSGTYPE_ALL_RESULTS); messageWindow.AppendText( "You say: " + sendText.Text + "\r\n" ); }
更新联系人的状态
我在 ListView 中使用了不同的图标来表示联系人相应的状态。当调用构造函数的时候,联系人的状态被第一次设置。当联系人状态改变的时候则调用 OnUserStatusChanged() 事件,更新联系人的状态。 private void OnUserStateChanged(Messenger.IMsgrUser user, Messenger.MSTATE state, ref bool default ) { for ( int i = 0 ; i < Users.Count; i++) { if (user == Users.Item(i)) { ListViewItem item = userList.Items[i]; item.ImageIndex = GetStateImage(user.State); } } }
小结
我希望大家会对这篇文章感兴趣,通过这篇文章我们也了解了 MSN 的一小部分功能。 MSN 还有很多其他的功能等我们去挖掘。 Ok, 现在我们知道了创建 Vs.net 外接程序其实是一件很容易的事情,你可以由此创建出更多富有创造性的外接程序。