From 0e1c6c25b1b0961d324811ff2132717a80f99efe Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期日, 26 四月 2020 14:15:05 +0800 Subject: [PATCH] 2020-04-26 1.添加住宅和修改住宅时,改为子线程操作。 2.远程连接模式时,禁用搜索网关和添加设备。3.修复切换住宅时,提示远程连接Loading不关闭问题。 --- Crabtree/SmartHome/HDL/Operation/BusSocket.cs | 21 +++++++++++++++++---- 1 files changed, 17 insertions(+), 4 deletions(-) diff --git a/Crabtree/SmartHome/HDL/Operation/BusSocket.cs b/Crabtree/SmartHome/HDL/Operation/BusSocket.cs old mode 100755 new mode 100644 index 3a9410b..5508ac5 --- a/Crabtree/SmartHome/HDL/Operation/BusSocket.cs +++ b/Crabtree/SmartHome/HDL/Operation/BusSocket.cs @@ -21,6 +21,7 @@ //鏈湴Socket private static Socket busSocket; + /// <summary> /// 鍚姩Socket鎺ユ敹鍜屽彂閫佸姛鑳� /// </summary> @@ -49,7 +50,8 @@ asyncBeginReceive (); - Console.WriteLine ("BusSocket鍚姩鎴愬姛锛�"); + Utlis.WriteLine ("BusSocket鍚姩鎴愬姛锛�"); + Control.IsEnterBackground = false; } /// <summary> @@ -68,8 +70,9 @@ catch { } busSocket = null; - Console.WriteLine("BusSocket鍏抽棴鎴愬姛!"); - } + Utlis.WriteLine("BusSocket鍏抽棴鎴愬姛!"); + Control.IsEnterBackground = true; + } /// <summary> /// 褰撳墠鐨凷ocket鏄惁杩愯 @@ -97,6 +100,7 @@ Packet packet = new Packet (); busSocket.BeginReceiveFrom (packet.Bytes, 0, packet.Bytes.Length, SocketFlags.None, ref packet.RemoteEndPoint, new AsyncCallback (asyncEndReceive), packet); + } catch (Exception e) { @@ -137,6 +141,7 @@ byte[] bytes = packet.Bytes; packet.Bytes = new byte[len]; System.Array.Copy(bytes, 0, packet.Bytes, 0, packet.Bytes.Length); + packet.Manager(); } catch { } @@ -155,7 +160,15 @@ } tempPacket.FlagDateTime = System.DateTime.Now; tempPacket.HaveSendCount++; - busSocket.BeginSendTo(tempPacket.Bytes, 0, tempPacket.Bytes.Length, SocketFlags.None, tempPacket.RemoteEndPoint, new AsyncCallback(asyncEndSend), tempPacket); + byte [] messageSend; + //2020-01-14 澧炲姞鏈湴閫氳鍔犲瘑 + if (UserConfig.Instance.IsLocalEncrypt) { + messageSend = Shared.Securitys.EncryptionService.AesEncryptPayload (tempPacket.Bytes, UserConfig.Instance.LocalEncryptKey); + } else { + messageSend = tempPacket.Bytes; + } + + busSocket.BeginSendTo(messageSend, 0, messageSend.Length, SocketFlags.None, tempPacket.RemoteEndPoint, new AsyncCallback(asyncEndSend), tempPacket); } catch { -- Gitblit v1.8.0