开发MSN插件http://blog.csdn.net/Red_angelX/archive/2006/12/26/1462781.aspx

MSN8.0开放了一些接口,使得我们能很方便的再它限定的范围内进行插件开发操作.

        开发环境:VS 2005 .NET 2.0  MSN 8.0

        再MSN安装目录下有个MessengerClient.dll的文件,要建立插件就要引用这个东西

        注册表 SoftWare/MicroSoft/MSNMessager下新建一个DWORD:AddInFeatureEnabled值为1 启用插件功能

        新建一个工程,引用MessengerClient.dll,可以看到内部的一些构造有个IMessagerAddIN的通用接口,我们写插件就扩展这个接口,重写里面的函数void Initialize(Microsoft.Messenger.MessengerClient messenger).

        里面的事件和方法不多,事件也就是收到消息,发送消息,状态改变事件,方法呢,就是发文字,发闪屏一些的,想来想去,MS给我们这个框架接口除了能让我们写机器人Robot聊天,还能干什么-_-#!!!

         DLL里面操作限制也很严格,不能访问本地文件,不能用MemoryStream分配内存...,要想自己画个图,只能用GDI+画.....

         本来想写个自动换头像插件的,结果发现接口没提供这个东西...,不过还是把一个最简单的Sample的例子放出来,依照这个架构扩展自己的插件就可以了

        

using  System;
using  System.Drawing;
using  System.Collections.Generic;
using  System.Text;
using  Microsoft.Messenger;

namespace  Red_angelX.MSNPlusIn
{
    
/// <summary>
    
/// MSN头像自动更换插件
    
/// 
    
/// @Author: Red_angelX
    
/// </summary>

    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 
= "头像自动更换插件";
            msn.AddInProperties.Url 
= new Uri("http://blog.csdn.net/Red_angelX");
            msn.AddInProperties.Status 
= UserStatus.Online;

            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(4848);
            Graphics g 
= Graphics.FromImage(bm);
            g.Clear(Color.Black);
            g.DrawString(
"Red"new Font(""16, FontStyle.Italic), Brushes.Red, 010);
            
return bm;
        }

    }

}

         再MSN菜单的工具->选项->加载项里面加载这个DLL,MSN对插件的文件名也有要求,那就是NAMESPACE+CLASS+DLL,也就是我这个DLL必须命民为:Red_angelX.MSNPlusIn.AutoChangeFace.dll才能正常试用,如果这些接口能实现什么有意思的功能而不是聊天机器人的话,那多令人兴奋-_-# 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值