|
@@ -116,15 +116,17 @@ namespace UAS_PLCDataReader.PublicMethod
|
|
|
serverFullAddr = new IPEndPoint(IPAddress.Parse(IP), int.Parse(Port));//设置IP,端口
|
|
serverFullAddr = new IPEndPoint(IPAddress.Parse(IP), int.Parse(Port));//设置IP,端口
|
|
|
socket.Connect(serverFullAddr);
|
|
socket.Connect(serverFullAddr);
|
|
|
}
|
|
}
|
|
|
- catch (Exception)
|
|
|
|
|
|
|
+ catch (Exception ex)
|
|
|
{
|
|
{
|
|
|
LogicHandler.UpdateDeviceStatus(decode, dename, DeviceStatus.Disconnect);
|
|
LogicHandler.UpdateDeviceStatus(decode, dename, DeviceStatus.Disconnect);
|
|
|
LogicHandler.DoDevicePollingLog(decode, false);
|
|
LogicHandler.DoDevicePollingLog(decode, false);
|
|
|
|
|
+ LogManager.DoLog(ex.Message + ex.StackTrace);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
public void Send(string Command)
|
|
public void Send(string Command)
|
|
|
{
|
|
{
|
|
|
|
|
+ string str = "";
|
|
|
try
|
|
try
|
|
|
{
|
|
{
|
|
|
if (!socket.Connected)
|
|
if (!socket.Connected)
|
|
@@ -140,23 +142,23 @@ namespace UAS_PLCDataReader.PublicMethod
|
|
|
arr[i] = (byte)Convert.ToInt32(Command.Substring(i * 2, 2), 16);
|
|
arr[i] = (byte)Convert.ToInt32(Command.Substring(i * 2, 2), 16);
|
|
|
}
|
|
}
|
|
|
socket.Send(arr);
|
|
socket.Send(arr);
|
|
|
-
|
|
|
|
|
byte[] receive = new byte[1024 * 1024];
|
|
byte[] receive = new byte[1024 * 1024];
|
|
|
LogicHandler.UpdateDeviceStatus(decode, dename, DeviceStatus.Noanswer);
|
|
LogicHandler.UpdateDeviceStatus(decode, dename, DeviceStatus.Noanswer);
|
|
|
LogicHandler.DoDevicePollingLog(decode, true);
|
|
LogicHandler.DoDevicePollingLog(decode, true);
|
|
|
int length = socket.Receive(receive);
|
|
int length = socket.Receive(receive);
|
|
|
LogicHandler.UpdateDeviceStatus(decode, dename, DeviceStatus.Running);
|
|
LogicHandler.UpdateDeviceStatus(decode, dename, DeviceStatus.Running);
|
|
|
- string str = BaseUtil.ByteToHexadecimalString(receive, length);
|
|
|
|
|
|
|
+ str = BaseUtil.ByteToHexadecimalString(receive, length);
|
|
|
LogicHandler.DoDevicePollingLog(decode, BaseUtil.ASCIIToString(str));
|
|
LogicHandler.DoDevicePollingLog(decode, BaseUtil.ASCIIToString(str));
|
|
|
if (!returnvalue.ContainsKey(socket.RemoteEndPoint.ToString()))
|
|
if (!returnvalue.ContainsKey(socket.RemoteEndPoint.ToString()))
|
|
|
{
|
|
{
|
|
|
returnvalue.Add(socket.RemoteEndPoint.ToString(), str);
|
|
returnvalue.Add(socket.RemoteEndPoint.ToString(), str);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- catch (Exception)
|
|
|
|
|
|
|
+ catch (Exception ex)
|
|
|
{
|
|
{
|
|
|
LogicHandler.UpdateDeviceStatus(decode, dename, DeviceStatus.Disconnect);
|
|
LogicHandler.UpdateDeviceStatus(decode, dename, DeviceStatus.Disconnect);
|
|
|
LogicHandler.DoDevicePollingLog(decode, false);
|
|
LogicHandler.DoDevicePollingLog(decode, false);
|
|
|
|
|
+ LogManager.DoLog(ex.Message + ex.StackTrace + "\n" + decode + " " + str);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|