溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

C#MSN插件開發(fā)實(shí)例分析

發(fā)布時(shí)間:2021-12-01 11:43:29 來(lái)源:億速云 閱讀:134 作者:iii 欄目:編程語(yǔ)言

這篇文章主要介紹“C#MSN插件開發(fā)實(shí)例分析”,在日常操作中,相信很多人在C#MSN插件開發(fā)實(shí)例分析問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”C#MSN插件開發(fā)實(shí)例分析”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!

C#MSN插件開發(fā)1、直接調(diào)用MSN遠(yuǎn)程服務(wù)

Net開發(fā)環(huán)境下最出名的要算DotMSN開發(fā)庫(kù)(開源)。 DotMSN是一款獨(dú)立的開源類庫(kù),它不需要和官方的MSN Messenger交互,因此不必安裝MSN Messenger就可以使用DotMSN和MSN Messenger服務(wù)通信.DotMSN是C#編寫的,所以.NET環(huán)境支持的語(yǔ)言都能夠使用.DotMSN類庫(kù)使用簡(jiǎn)單而且實(shí)現(xiàn)方便。它靈活,堅(jiān)固,輕量級(jí)利于整合到任何應(yīng)用系統(tǒng).使用DotMSN的應(yīng)用系統(tǒng)能實(shí)現(xiàn)從創(chuàng)建消息機(jī)器人到自定義客戶端等各種不同的功能.

如果你的應(yīng)用程序需要和Messenger服務(wù)通信,DotMSN是一個(gè)不錯(cuò)的工具.

C#MSN插件開發(fā)2、調(diào)用MSN的組件開發(fā)

主要功能來(lái)自引用MessengerClient.dll。

開發(fā)MSN插件

MSN8.0開放了一些接口,使得我們能很方便的再它限定的范圍內(nèi)進(jìn)行插件開發(fā)操作.

開發(fā)環(huán)境:VS 2005 .NET 2.0  MSN 8.0

再M(fèi)SN安裝目錄下有個(gè)MessengerClient.dll的文件,要建立插件就要引用這個(gè)東西

注冊(cè)表 SoftWare\MicroSoft\MSNMessager下新建一個(gè)DWORD:AddInFeatureEnabled值為1 啟用插件功能

新建一個(gè)工程,引用MessengerClient.dll,可以看到內(nèi)部的一些構(gòu)造有個(gè)IMessagerAddIN的通用接口,我們寫插件就擴(kuò)展這個(gè)接口,重寫里面的函數(shù)void Initialize(Microsoft.Messenger.MessengerClient messenger).

里面的事件和方法不多,事件也就是收到消息,發(fā)送消息,狀態(tài)改變事件,方法呢,就是發(fā)文字,發(fā)閃屏一些的,想來(lái)想去,MS給我們這個(gè)框架接口除了能讓我們寫機(jī)器人Robot聊天,還能干什么-_-#!!!

DLL里面操作限制也很嚴(yán)格,不能訪問(wèn)本地文件,不能用MemoryStream分配內(nèi)存...,要想自己畫個(gè)圖,只能用GDI+畫.....

本來(lái)想寫個(gè)自動(dòng)換頭像插件的,結(jié)果發(fā)現(xiàn)接口沒提供這個(gè)東西...,不過(guò)還是把一個(gè)最簡(jiǎn)單的Sample的例子放出來(lái),依照這個(gè)架構(gòu)擴(kuò)展自己的插件就可以了

C#MSN插件開發(fā)實(shí)例演示:

using System;  using System.Drawing;  using System.Collections.Generic;  using System.Text;  using Microsoft.Messenger;    namespace Red_angelX.MSNPlusIn  ...{  /**////  /// MSN頭像自動(dòng)更換插件  ///   /// @Author: Red_angelX  ///  public class AutoChangeFace : IMessengerAddIn  ...{  MessengerClient msn;  public void Initialize(MessengerClient messager)  ...{  msn = messager;   msn.AddInProperties.Creator = "Red_angelX";  msn.AddInProperties.Description = "CopyRight (C) 2006-2009 Red_angelX";  msn.AddInProperties.FriendlyName = "頭像自動(dòng)更換插件";  msn.AddInProperties.Url = new Uri("http://blog.csdn.net/Red_angelX");  msn.AddInProperties.Status = UserStatus.Online; http://www.it55.com/    msn.AddInProperties.UserTile = RandImage();  }   private Image RandImage()  ...{  //Font ft = new System.Drawing.Font(  "宋體", 14.25F, System.Drawing.FontStyle.Bold,   System.Drawing.GraphicsUnit.Point, ((System.Byte)(134)));  Bitmap bm = new Bitmap(48, 48);  Graphics g = Graphics.FromImage(bm);  g.Clear(Color.Black);  g.DrawString("Red", new Font("", 16,   FontStyle.Italic), Brushes.Red, 0, 10);  return bm;  }  }  }

再M(fèi)SN菜單的工具->選項(xiàng)->加載項(xiàng)里面加載這個(gè)DLL,MSN對(duì)插件的文件名也有要求,那就是NAMESPACE+CLASS+DLL,也就是我這個(gè)DLL必須命民為:Red_angelX.MSNPlusIn.AutoChangeFace.dll才能正常試用,如果這些接口能實(shí)現(xiàn)什么有意思的功能而不是聊天機(jī)器人的話,那多令人興奮-_-#

到此,關(guān)于“C#MSN插件開發(fā)實(shí)例分析”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

msn
AI