/// <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(当前为服务端模式); }
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; }