示例#1
0
        /// <summary>判断服务端或客户端模式,该函数必须调用
        ///
        /// </summary>
        /// <returns>true=服务端模式,false=客户端模式</returns>
        public static bool CheckClientOrServerMode()
        {
            List <string> ips = QL_Net.GetHostIPs();

            当前为服务端模式 = ips.Exists((string ip) => ip == AppConfig.FEILUN_SERVERIP.Address.ToString());
            string[] msg = new string[]
            {
                "当前以" + (当前为服务端模式 ? "服务端" : "客户端") + "模式运行",
                "服务端:" + AppConfig.FEILUN_SERVERIP,
                "客户端:" + AppConfig.FEILUN_CLIENTIP,
            };
            ToolAlarm.ShowDialog(string.Join("\r\n", msg));
            return(当前为服务端模式);
        }
示例#2
0
        private async void button1_Click(object sender, EventArgs e)//重新获取本地网络地址 和 配置项 和 缓存机号
        {
            label_IPMsg.Text      = "...";
            label_IPMsg.ForeColor = this.ForeColor;
            await Task.Run(() => System.Threading.Thread.Sleep(200));

            #region 检测和数据库的网络关系,一般来说,使用ClickOnce后,必须是联网状态才能显示登陆窗体,这个检测意义并不是很大
            if (!QL_Ping.PingOnce(SQL.DBIP))
            {
                label_IPMsg.Text      = "您未和数据库服务器" + SQL.DBIP + "建立网络连接.\r\n如果您刚打开计算机,请稍等后再尝试.若长时间无法解决,请通知网管";
                label_IPMsg.ForeColor = Color.Red;
                return;
            }
            #endregion
            #region 获取有效IP地址
            var enableip = QL_Net.GetEnableNetHosts("172.16");
            if (enableip.Count == 0)
            {
                label_IPMsg.Text      = "您当前计算机的网卡中没有有效的IP地址,请检查网络配置后再次尝试.\r\n您当前计算机中检测到的网络地址为:" + QL_Net.GetHostIPs().Join();
                label_IPMsg.ForeColor = Color.Red;
                return;
            }
            #endregion

            #region 获取当前有效IP地址并显示 注入配置信息
            SQL.GetConfig(enableip, out string err);
            if (err != "")
            {
                label_IPMsg.Text      = err;
                label_IPMsg.ForeColor = Color.Red;
                return;
            }

            #endregion

            label_IPMsg.Text = string.Format(
                "当前有效的网络地址为{0}\r\n岗位信息如下:\r\n生产线:{1} | 工位:{2} | 工序:{3} | 工位名称:{4}\r\n端口:{5} | 驱动类型:{6}",
                AppConfig.PCIP, AppConfig.SCX, AppConfig.GWName, AppConfig.GX, AppConfig.GWName, AppConfig.ComPort, AppConfig.TIGHTENCONTROLERTYPE);
            label_IPMsg.ForeColor = this.ForeColor;

            IsGetConfig = true;
        }