/// <summary> /// Deserialize the ROP response buffer. /// </summary> /// <param name="ropBytes">ROPs bytes in response.</param> /// <param name="startIndex">The start index of this ROP.</param> /// <returns>The size of response buffer struct.</returns> public int Deserialize(byte[] ropBytes, int startIndex) { int index = startIndex; this.RopId = ropBytes[index++]; this.NotificationHandle = (uint)BitConverter.ToInt32(ropBytes, index); index += 4; this.LogonId = ropBytes[index++]; this.NotificationData = new NotificationData(); index += this.NotificationData.Deserialize(ropBytes, index); return(index - startIndex); }