
ChrisTorng Test Addin 1.0
功能
这个 Test Addin 没什么功能,基本上就是把 Windows Live Messenger 之官方 addin 所有能做的事都展现出来了.主要是提供想自己写 addin 的人,可以参考的程序代码.
安装方法
1. 必须安装 Windows Live Messenger 8.0.0683 以上.
2. 必须要安装 .NET Framework 2.0 版 (22.4MB) http://www.microsoft.com/downloads/details.aspx?FamilyID=0856eacb-4362-4b0d-8edd-aab15c5e04f5&DisplayLang=zh-tw
3. 将压缩文件解开至任意数据夹.如果不需要原始程序的人,可以删掉除 ChrisTorngTestAddin.dll 以外其它所有的档案.
4. 登录 HKEY_CURRENT_USERSoftwareMicrosoftMSNMessenger 中增加 AddInFeatureEnabled DWORD 值为 1,以启动隐藏的 Add-ins 功能.
5. Messenger 主窗口 - Tools - Options - Add-ins - Add to Messenger,选择解出来的 ChrisTorngTestAddin.dll.可以在此处按Settings 开启设定窗口.
6. 在 Messenger 主窗口自己的显示名称上按一下,选择 Turn on "ChrisTorng Test Addin".
原始程序代码
1. 使用 Visual Studio 2005 编译.Visual C# 2005 Express Edition 应该可以编译 http://msdn.microsoft.com/vstudio/express/visualcsharp/
2. 编译前,可能需要加入下列参考 C:Program FilesMSN MessengerMessengerClient.dll.
3. 目前 Windows Live Messenger 无法正确释放 dll,因此如果无法编译,请结束 Windows Live Messenger 执行后再编译.若 remove 之后等一段时间,也可以释放 dll.
4. 执行档名称必须要与实作 IMessengerAddin 之主类别名称相同,而且该主类别不能包在 namespace 中.
5. 我想微软怕它被用来做 spam,基本上把 addin 定位为人离开时自动回复讯息的工具,因此:
‧同时只能使用一个 addin.
‧不能自动启动,只能设为在切到非在线/离线状态时自动启动,或由使用者手动启动.
‧启动后,WLM 会自动设定由 AddinProperties 中指定的 PersonalStatusMessage/Status/UserTile,关闭时又会自动恢复原始的信息.不过状态有时会切不过去,原因不明.
‧不能自由取得所有连络人的信息,只能在传讯或状态改变时,得到对方的信息.
‧SendxxxMessage 只能在 OutgoingTextMessage/IncomingTextMessage 事件中呼叫,也因此程序送的讯息只能在有人送进/出讯息之后再加一个讯息.
‧Text 讯息一次限 400 字符,Action 讯息则一次可送 32767 字符 (因受限于文字方块的长度,有可能还可以更长…).
‧有许多安全性限制,比如说不能开文件,因此无法选择硬盘中的图片作为显示图片…
6. SavedState 可以储存 addin 自己的状态,供关闭后再开启时,能恢复状态用.
7. 上述储存状态,应是储存在 HKEY_CURRENT_USERSoftwareMicrosoftMSNMessengerPerPassportSettings 中所属 Passport 代号下的 InstalledAddInsListChrisTorngTestAddin.dll 中.
作者
ChrisTorng
2006/4/21
http://spaces.msn.com/ChrisTorng
感谢协助测试
Mowd http://blog.mowd.idv.tw
foolbear http://foolbear.bokee.com