有人在做OCS的二次开发的吗?

laj0600310219 2010-08-16 01:37:32
请问有人在做OCS的二次开发的吗?最近在学这个,但是却不知该怎么下手,忘高手指点一下。。。
...全文
81 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
dogfish001 2010-08-19
  • 打赏
  • 举报
回复
http://www.cnblogs.com/invinboy/category/119351.html


真正的二次开发,再扩展当然离不开 OC的 SDK
你要有一定C#/C++开发水平,方能得心应用

首先 安装SDK, 随便安装在哪(XP、Vista都行)
OCS SDK支持多语言,C++/C#
SDK 提供了多种接口, 可供在扩展开发, 这就是我们常说的API接口
例如 IMessenger,它就提供了丰富的方法,属性,事件,例如,OC的登陆,OC的信息获取
添加用户、组等等。。总之相当丰富,但遗憾的事。目前没有中文文档
安装完OC SDK后,官方有提供一份简单的参考,不过对初次接触的人很有帮助

C# 的话 它提供了CommunicatorAPI.dll和CommunicatorPrivate.dll两个 API接口类库
举个简单的例子,在使用前的第一步就是实利化CommunicatorAPI
communicator = new CommunicatorAPI.Messenger();
这样 你就可以调用 超多丰富的属性和方法了

当然,它提供的事件让你可直接捕获OC的多数事件,例如
communicator.OnSignin += new DMessengerEvents_OnSigninEventHandler(communicator_OnSignin);
你的程序即可捕获OC的登陆事件,在事件触发后,你即可编写自己想要做的事

还有它提供的发送消息方法,让你可直接调用OC来发送消息, 群发信息
void IMessengerConversationWndAdvanced.SendText(string bstrTextMessage) 方法

如果你搭建过了OCS 肯定不会对OCSCM_setup_x86陌生吧,它很方便的让我们为OC客户端添加联系人
它其实也是C# 开发,相信 它也是借鉴了OC的开发接口,它的核心做法并不只是简单的修改AD数据
而是修改SQL数据库,因为OCS的核心数据都来自SQL Server的存储,这就解释了, 当我们用OCSCM不断的添加联系后
会发现添加的速度越来越慢,这就是因为当递归添加联系人,并不简单的添加一条数据,而是为每个用户都添加相应的数据
所以添加的人数越多,再添加就越慢
当然 OC SDK communicatorAPI 即提供了这样的方法
如:void communicator.AddContact(int hwndParent,string bstrEmail)
void communicator.CreateGroup(string bstrName, object nService)
所以你真正研究透了OC SDK 你一样能开发出OCSCM_setup_x86 这样的软件

总之,SDK提供了 OC丰富的API接口

6,210

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office应用
社区管理员
  • Microsoft Office应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧