This looks to be protobuf-net specific. Note that protobuf-net includes
SerializeWithLengthPrefix and DeserializeWithLengthPrefix which can be used
to simplify working with multiple separate logical messages on a single
stream (such as against a socket), without ever over-reading.

Also - it should never error with an EOF unless the socket becomes broken
mid-message. More likely, it would simply block waiting on incoming data -
or throw a timeout if timeouts are enabled on the underlying stream.

Marc
On 22 Apr 2014 16:58, "Empi" <gmpe...@gmail.com> wrote:

> Hi and thanks for this lovely serializer.
>
> I'm working on  aproject on which local desktop application is "talking"
> tcp/ip with local window 8 application (metro) through loopback.
> I did of course loopback exemption, and all worked great!!! until...
> yesterday I've added an additional String field to the serialized class...
> and I get the above error.
> If I remove the String it works great again.
>
> Can you help me solve this mystery?
>
> The classes I serialize has the following structure (last field is a class
> on which the string is added, I removed field's name and left only the
> types).
>
>     [ProtoContract]
>     public class cMessage
>     {
>         [ProtoMember(1)]
>         public uint nPacketNumber { get; set; }
>         [ProtoMember(2)]
>         public int nBatteryStatus { get; set; }
>         [ProtoMember(3)]
>         public Boolean isCharging { get; set; }
>         [ProtoMember(4)]
>         public COMM_STATUS commStatus { get; set; }
>         [ProtoMember(5)]
>         public Boolean isDownloading { get; set; }
>         [ProtoMember(6)]
>         public COMM_ERRORS commErrorCode { get; set; } //
>         [ProtoMember(10)]
>         public cGeneralInfo cInfo;
>     }
>
>     [ProtoContract]
>     public class cGeneralInfo
>     {
>         [ProtoMember(100)]
>         public DateTime dtLastPacket;
>         [ProtoMember(101)]
>         public uint unBatteryStatus;
>         [ProtoMember(102)]
>         public uint unChargingStatus;
>         [ProtoMember(103)]
>         public double dSoftwareVersion;
>         [ProtoMember(104)]
>         public String sInfo1
>         [ProtoMember(105)]
>         public uint
>         [ProtoMember(106)]
>         public uint
>         [ProtoMember(107)]
>         public uint
>         [ProtoMember(108)]
>         public uint
>         [ProtoMember(109)]
>         public uint
>         [ProtoMember(110)]
>         public uint
>         [ProtoMember(111)]
>         public double
>         [ProtoMember(112)]
>         public int
>         [ProtoMember(113)]
>         public int
>         [ProtoMember(114)]
>         public int
>         [ProtoMember(115)]
>         public int
>         [ProtoMember(116)]
>         public int
>         [ProtoMember(117)]
>         public int
>         [ProtoMember(118)]
>         public int
>         [ProtoMember(119)]
>         public int
>         [ProtoMember(120)]
>         public int
>         [ProtoMember(121)]
>         public int
>         [ProtoMember(122)]
>         public int
>         [ProtoMember(123)]
>         public int
>         [ProtoMember(124)]
>         public int
>         [ProtoMember(125)]
>         public int
>         [ProtoMember(126)]
>         public string
>         [ProtoMember(127)]
>         public int
>         [ProtoMember(128)]
>         public String             ////   This is the filed started causing
> the error.
> }
>
>
> Thanks!!!.
>
>
> Empi
>
>
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Protocol Buffers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to protobuf+unsubscr...@googlegroups.com.
> To post to this group, send email to protobuf@googlegroups.com.
> Visit this group at http://groups.google.com/group/protobuf.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to protobuf+unsubscr...@googlegroups.com.
To post to this group, send email to protobuf@googlegroups.com.
Visit this group at http://groups.google.com/group/protobuf.
For more options, visit https://groups.google.com/d/optout.

Reply via email to