public void Send(string address, Bitmap obj) { lock (syncRoot) { obj = this.ResizeImage(obj, new Size(100, 100)); MemoryStream ms = new MemoryStream(); obj.Save(ms, ImageFormat.Png); byte[] bitmapData = ms.ToArray(); ms.Close(); string data = Convert.ToBase64String(bitmapData); EndpointAddress endpoint = new EndpointAddress($"net.tcp://{address}"); using (ChannelFactory <ITransmissionContract> channelFactory = new ChannelFactory <ITransmissionContract>("ITransmissionContract")) { try { ITransmissionContract proxy = channelFactory.CreateChannel(endpoint); proxy.SendDesktopCapturer(bitmapData); } catch (Exception e) { mLoger.Error("An error has occurred in the send vodeo data,error:{0}", e.ToString()); } } } }
public void Close(string address) { lock (syncRoot) { EndpointAddress endpoint = new EndpointAddress($"net.tcp://{address}"); using (ChannelFactory <ITransmissionContract> channelFactory = new ChannelFactory <ITransmissionContract>("ITransmissionContract")) { try { ITransmissionContract proxy = channelFactory.CreateChannel(endpoint); proxy.Close(); } catch (Exception e) { File.AppendAllText("log.txt", e.Message); } } } }