/// <summary> /// 发送群消息 /// </summary> /// <param name="groupId">目标群</param> /// <param name="message">消息内容</param> /// <returns>失败返回负值, 成功返回消息 Id</returns> public int SendGroupMessage(long groupId, string message) { GCHandle handle = message.GetStringGCHandle(_defaultEncoding); int msgId = CQP.CQ_sendGroupMsg(_authCode, groupId, handle.AddrOfPinnedObject()); handle.Free(); return msgId; }
/// <summary> /// 发送群消息 /// </summary> /// <param name="groupId">目标群</param> /// <param name="message">消息内容</param> /// <returns>失败返回负值, 成功返回消息 Id</returns> public int SendGroupMessage(long groupId, string message) { GCHandle handle = message.GetStringGCHandle(_defaultEncoding); string msgId = "0" + Marshal.PtrToStringAnsi(CQP.CQ_sendGroupMsg(_authCode, groupId, handle.AddrOfPinnedObject())); handle.Free(); return(Convert.ToInt32(msgId)); }
/// <summary> /// 发送群消息 /// </summary> /// <param name="groupId">目标群号码</param> /// <param name="message">用于发送消息对象数组. (获取字符串将优先调用 <see cref="IToSendString.ToSendString"/> 接口, 若不存在该接口则调用 <see cref="Object.ToString"/>)</param> /// <exception cref="ArgumentOutOfRangeException">参数: groupId 超出范围</exception> /// <exception cref="ArgumentNullException">参数: message 中有 null 元素</exception> /// <returns>描述已发送消息的 <see cref="QQMessage"/> 对象</returns> public QQMessage SendGroupMessage(long groupId, params object[] message) { if (groupId < Group.MinValue) { throw new ArgumentOutOfRangeException("groupId"); } string sendMsg = message.ToSendString(); GCHandle msgHandle = sendMsg.GetStringGCHandle(CQApi.DefaultEncoding); try { int msgId = CQP.CQ_sendGroupMsg(this.AppInfo.AuthCode, groupId, msgHandle.AddrOfPinnedObject()); return(new QQMessage(this, msgId, sendMsg, false)); } finally { msgHandle.Free(); } }
/// <summary> /// 发送群消息 /// </summary> /// <param name="groupId">目标群</param> /// <param name="message">消息内容</param> public int SendGroupMessage(long groupId, string message) { return(CQP.CQ_sendGroupMsg(_authCode, groupId, message.ToIntPtr(_defaultEncoding))); }
/// <summary> /// 发送群消息 /// </summary> /// <param name="groupId">目标群</param> /// <param name="message">消息内容</param> public int SendGroupMessage(long groupId, string message) { return(CQP.CQ_sendGroupMsg(_authCode, groupId, NativeConvert.ToStringPtr(message, Encoding.GetEncoding("GB18030")))); }