private string ReadModalInfoHandle(ref ushort flib, string para) { string message = null; var res = new ReadModalResultModel(); var ret = new ModalInfoHelper().ReadModalInfo(flib, ref res); if (ret.Item1 == -16) { var ret_conn = ConnectHelper.BuildConnect(ref flib, m_ip, m_port, m_timeout); if (ret_conn == 0) { ret = new ModalInfoHelper().ReadModalInfo(flib, ref res); } } if (ret.Item1 != 0) { message = ret.Item2; } GetResultEvent?.Invoke(new BaseCNCResultModel <ReadModalResultModel>() { Value = new List <ReadModalResultModel>() { res }, Id = para }); return(message); }
public Tuple <short, string> ReadModalInfo(ushort flib, ref ReadModalResultModel data) { data.Modals.Clear(); short num_gcd = 28; Focas1.ODBGCD g_code = new Focas1.ODBGCD(); var ret = Focas1.cnc_rdgcode(flib, -1, 1, ref num_gcd, g_code); if (ret == 0) { for (int i = 0; i < 21; i++) { string strdata = "gcd" + (i + 1).ToString(); object obj = g_code.GetType().GetField(strdata).GetValue(g_code); string code = obj.GetType().GetField("code").GetValue(obj).ToString(); data.Modals.Add(code); } return(new Tuple <short, string>(0, null)); } else { return(new Tuple <short, string>(ret, $"读取模态信息错误,返回:{ret}")); } }