wanshenmean
6 天以前 37acb8358f5602a9013ee29c04a45e33483c2329
Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/Siemens/SiemensS7Communicator.cs
@@ -242,6 +242,8 @@
                        return plc.Write(address, Convert.ToString(value));
                    case TypeCode.Char:
                        return plc.Write(address, Convert.ToChar(value));
                    //case TypeCode.arr:
                    //    return plc.Write(address, Convert.ToChar(value));
                    default:
                        if (value is int[])
                        {
@@ -673,6 +675,21 @@
                case SiemensDBDataType.DataType_Char:
                    break;
                case SiemensDBDataType.DataType_ByteArray:
                    {
                        byte[] writeVal;
                        try
                        {
                            writeVal = Encoding.UTF8.GetBytes(value.ToString());
                        }
                        catch (Exception ex)
                        {
                            throw new CommunicationException(string.Format(CommunicationExceptionMessage.TypeConvertError, dataType, address, value, ex.Message), CommunicationErrorType.TypeError, innerException: ex);
                        }
                        obj = GetResult(Write(address, writeVal), address, writeVal);
                    }
                    break;
                default:
                    throw new CommunicationException(string.Format(CommunicationExceptionMessage.DataTypeErrorException, dataType, address), CommunicationErrorType.TypeError);
            }