private void SendNoticeData(string csSendData, string csReceiver) { RTXSAPILib.RTXSData sendData = RootObj.CreateRTXSData(); // 创建一个SData对象 //封装协议包,可理解SDataObj是一个协议包,该协议包被封装进消息对象MsgObj,然后调用应用对象的SendMessage方法把MsgObj发送给客户端 sendData.SetString("Sender", "{16F8F6DB-EB21-4520-8371-421DD76A9149}"); // 设置发送者 sendData.SetString("Content", csSendData); // 设置消息内容 //为了容易理解,本示例协议包只有两个字段,这些字段名称可以自行名称。 MsgObj.Sender = "{16F8F6DB-EB21-4520-8371-421DD76A9149}"; //'设置发送者,该GUID为应用的GUID。 MsgObj.Receivers = csReceiver; //设置接收者 MsgObj.MsgType = "Tencent.RTX.PlugInYgNotice"; //设置消息类型,该消息类型可以在客户端插件查看 MsgObj.AppName = "Tencent.RTX.PlugInYgNotice"; //该名为客户端插件的名称,插件名称一般与消息类型一致 MsgObj.Content = sendData.XML; // 把SData导出为xml格式后赋值给Content MsgObj.MessageFlag = RTXSAPI_MESSAGE_FLAG.RTXSAPI_MESSAGE_FLAG_DEFAULT; //默认的处理方式,允许其它应用过滤消息,也允许以抽取的方式对消息进行过滤 try { ApiObj.SendMessage(MsgObj, false); //把MsgObj发给客户端 } catch (COMException xe) { //MessageBox.Show(xe.Message); } }
public Form1() { InitializeComponent(); RootObj = new RTXSAPIRootObj(); //创建根对象 ApiObj = RootObj.CreateAPIObj(); //通过根对象创建应用对象 MsgObj = ApiObj.CreateMessage(); //通过应用对象创建消息对象 DataObj = RootObj.CreateRTXSData(); //通过根对象创建SData对象 ApiObj.OnRecvMessage += new _IRTXSAPIObjEvents_OnRecvMessageEventHandler(ApiObj_OnRecvMessage); //订阅一个事件,当收到客户端插件发过来的消息时触发该事件 mydelegate = new AddText(AddTextMethod); }