![]() The error message will be displayed when checking for Field2 that is a TBytes becayse the FieldType is always nil!!!ĭoes anyone has any clue of what have changed in the RTTI from D2010 do XE2? Maybe because the TBytes type was changed from array of Byte to the generic array? RttiClassType := TRttiInstanceType(Rtti.GetType(Data.ClassInfo)) įor i := 0 to High(RttiClassType.GetFields) do Procedure TForm2.Button1Click(Sender: TObject) ![]() To test the code please add Rtti unit to the uses declaration type The following code works well in D2010, but shows the message "Error" in XE2/XE3ĭoes anyone have any clue? This will totally break all our software data serialization implementation I found that the RTTI information for a TBytes variable inside a class is never generated. I recently migrated from D2010 to DXE2 and found a showstopper bug (Or feature?) in XE2 and XE3 (Tested in my friend XE3) related to RTTI generation for TBytes fields inside classes.
0 Comments
Leave a Reply. |