コード例 #1
0
 private void NetworkAlienStart(int port)
 {
     networkAlien = new NetworkAlienClient( );
     networkAlien.OnClientConnected += NetworkAlien_OnClientConnected;
     networkAlien.LogNet             = logNet;
     networkAlien.ServerStart(port);
 }
コード例 #2
0
        private void AddServer(XElement xmlNode)
        {
            var serverType = int.Parse(xmlNode.Attribute("ServerType").Value);

            if (serverType == ServerNode.ModbusServer)
            {
                var serverNode = new NodeModbusServer();
                serverNode.LoadByXmlElement(xmlNode);
                var server = new ModbusTcpServer();
                server.LogNet = LogNet;
                server.Port   = serverNode.Port;
                modbusTcpServers.Add(server);
            }
            else if (serverType == ServerNode.AlienServer)
            {
                var alienNode = new AlienServerNode();
                alienNode.LoadByXmlElement(xmlNode);

                var networkAlien = new NetworkAlienClient();
                networkAlien.LogNet = LogNet;
                if (!string.IsNullOrEmpty(alienNode.Password))
                {
                    networkAlien.SetPassword(Encoding.ASCII.GetBytes(alienNode.Password));
                }
                networkAlien.Port = alienNode.Port;
                networkAlien.OnClientConnected += NetworkAlien_OnClientConnected;
                networkAliens.Add(networkAlien);
            }
        }
コード例 #3
0
 private void NetworkAlien_OnClientConnected(NetworkAlienClient network, AlienSession session)
 {
     if (session.DTU == simplifyClient.ConnectionId)
     {
         simplifyClient.ConnectServer(session);
         Invoke(new Action(() =>
         {
             panel2.Enabled  = true;
             button2.Enabled = true;
         }));
     }
 }
コード例 #4
0
        private void AddNetworkAlien(AlienNode alienNode)
        {
            NetworkAlienClient networkAlien = new NetworkAlienClient( );

            networkAlien.LogNet = Util.LogNet;
            if (!string.IsNullOrEmpty(alienNode.Password))
            {
                networkAlien.SetPassword(Encoding.ASCII.GetBytes(alienNode.Password));
            }
            networkAlien.Port = alienNode.Port;
            networkAlien.OnClientConnected += NetworkAlien_OnClientConnected;
            this.networkAliens.Add(networkAlien);
        }
コード例 #5
0
        private void NetworkAlien_OnClientConnected(NetworkAlienClient networkAlien, AlienSession session)
        {
            bool isExist = false;

            if (dictDeviceCores.ContainsKey(session.DTU))
            {
                dictDeviceCores[session.DTU].SetAlineSession(session);
                isExist = true;
            }

            if (!isExist)
            {
                // 退出
                session.Socket?.Close( );
                networkAlien.AlienSessionLoginOut(session);
            }
        }