• 给msn 添加addin, 制作msn机器人


    1。修改注册表,添加如下一项,(如果不修改,则在‘工具’-》‘选项’中不会有“加载项”这个选项。

    HKEY_CURRENT_USER\Software\Microsoft\MSNMessenger\AddInFeatureEnabled   DWORD   1

    2。添加一个vs2005中的class library工程。
    3。工程中添加引用: C:\Program Files\MSN Messenger and choose 'MessengerClient.dll‘
    4。在自动生成的class1.cs中添加引用:'using Microsoft.Messenger'
    5。并设置Class1.cs继承于IMessengerAddIn
    6。添加代码到Class1中。

    MessengerClient m_client;

     // 初始化

                  void IMessengerAddIn.Initialize(MessengerClient client)

            {

                m_client = client;

                // 设置插件的属性

                m_client.AddInProperties.FriendlyName = "SmartTalker";

                m_client.AddInProperties.PersonalStatusMessage =  "Talk to me!";

                // 当接收到消息时触发事件
                m_client.IncomingTextMessage +=

                    new EventHandler<IncomingTextMessageEventArgs>            (this.OnIncomingMessage); 

            }

           / / 处理事件,发送一条自定义消息给发送人

                public void OnIncomingMessage(object sender,

                                    IncomingTextMessageEventArgs args)

            {

                m_client.SendTextMessage("Hello " +

                    args.UserFrom.FriendlyName +

                    ". Check back later and maybe I'll say something more interesting.",

                    args.UserFrom);

            }

    7。在工程的属性窗口中, 修改生成的DLL(程序集)名称为:工程名称.Class1
        DLL的名称必须与继承IMessengerAddIn的类的全称一致, 即:" 命名空间.类名.dll", 否则在MSN中加载时将报错.
    8。编译之后在"加载项"中选择这个生成的DLL即可。
    9。在MSN的状态下拉框中会发现“启用Smart Talker" 菜单项,选中之后。任何人发MSN消息过来即会被addin处理。

    扩充:
    上面只是一个简单的演示,你可以根据发送人的名称,单独处理,也可以从DB中取数据返回一些内容。

    另外,如果在addin类中调用了web serivice,则无法加载此DLL,没找到原因,看来还是使用dotmsn开发方便.

    ref:
    http://blogs.msdn.com/katieblanch/archive/2006/05/11/595765.aspx
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnlive/html/messengeraddin_sdk.asp
  • 相关阅读:
    PAT 1012 数字分类
    PAT 1046 划拳
    PAT 1021 个位数统计
    PAT 1003 我要通过!
    PAT 1031 查验身份证
    安装swoole
    PHP yield 分析,以及协程的实现,超详细版(上)
    PHP性能优化利器:生成器 yield理解
    swoole深入学习 8. 协程 转
    swoole| swoole 协程初体验 转
  • 原文地址:https://www.cnblogs.com/margiex/p/571091.html
Copyright © 2020-2023  润新知