From d3f5a8d09909e9cd81dcbd0d76a31501b529ca26 Mon Sep 17 00:00:00 2001 From: Marcos Pereira Date: Wed, 9 Mar 2016 14:26:54 +0000 Subject: [PATCH] Write struct and multiple bytes from a specific start bytes address. --- S7.Net.Core/PLC.cs | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/S7.Net.Core/PLC.cs b/S7.Net.Core/PLC.cs index f7d32a9..b1fa1d4 100644 --- a/S7.Net.Core/PLC.cs +++ b/S7.Net.Core/PLC.cs @@ -803,9 +803,14 @@ namespace S7.Net } public ErrorCode WriteStruct(object structValue, int db) + { + return WriteStruct(structValue, db, 0); + } + + public ErrorCode WriteStruct(object structValue, int db, int startByteAdr) { var bytes = Types.Struct.ToBytes(structValue).ToList(); - var errCode = WriteMultipleBytes(bytes, db); + var errCode = WriteMultipleBytes(bytes, db, startByteAdr); return errCode; } @@ -823,9 +828,14 @@ namespace S7.Net /// The DB number /// ErrorCode when writing (NoError if everything was ok) private ErrorCode WriteMultipleBytes(List bytes, int db) + { + return WriteMultipleBytes(bytes, db, 0); + } + + private ErrorCode WriteMultipleBytes(List bytes, int db, int startByteAdr) { ErrorCode errCode = ErrorCode.NoError; - int index = 0; + int index = startByteAdr; try { while (bytes.Count > 0)