private void SendHostMessage(uint kind) { var str = host as System.Runtime.InteropServices.ComTypes.IStream; HhMessageHeader h = new HhMessageHeader(); h.Length = HhMessageHeader.FixedSize; h.Kind = kind; str.Write(h.ToByteArray(), (int)h.Length, IntPtr.Zero); }
internal void SetParentHwnd(IntPtr handle) { var str = host as System.Runtime.InteropServices.ComTypes.IStream; HhMessageHeader h = new HhMessageHeader(); h.Kind = (uint)HhMessageId.SetParentHwndMsgId; h.Length = (uint)(HhMessageHeader.FixedSize + sizeof(UInt64)); var stream = new System.IO.MemoryStream(); var writer = new System.IO.BinaryWriter(stream); writer.Write(h.Length); writer.Write(h.Kind); writer.Write(handle.ToInt64()); writer.Flush(); str.Write(stream.ToArray(), (int)h.Length, IntPtr.Zero); }
internal void SendHostMessagePlay(string payload) { var str = host as System.Runtime.InteropServices.ComTypes.IStream; HhMessageHeader h = new HhMessageHeader(); h.Kind = SetPayloadMsgId; byte[] payloadBytes = Encoding.UTF8.GetBytes(payload); h.Length = (uint)(HhMessageHeader.FixedSize + payloadBytes.Length + 1); var stream = new System.IO.MemoryStream(); var writer = new System.IO.BinaryWriter(stream); writer.Write(h.Length); writer.Write(h.Kind); writer.Write(payloadBytes); writer.Write('\0'); writer.Flush(); str.Write(stream.ToArray(), (int)h.Length, IntPtr.Zero); }