寻求帮助从记录获取值到 CodeSite。虽然我有基本值(整数,字符串..)的记录,但一切正常。
但是问题来自记录中的数组。
姓氏:WideChar 的
数组[0..35] 名称:WideChar 的数组[0..25]
(我找到了这个,但有什么办法吗?)
对于静态数组,使用 RTTI 获取记录字段类型失败
虽然我想获取 Surname / Name 的字段值,但 TRttiField.FieldType.TypeKind 为空。
任何人都知道如何将属性的值转换为字符串?
有我的程序。
class procedure TCodeSite.SendObject<T>(Category: String; lObject : T; Msg: String);
var
lRTTIContext : TRttiContext;
lRTTIObjectType : TRttiType;
lRTTIField : TRttiField;
lRTTIRecordInRecord : TRttiRecordType;
lRTTIFieldInRecord : TRttiField;
lRTTIPointerType : TRttiPointerType;
lRTTIPointerValue : TValue;
lFieldName : string;
lFieldNameInRecord : string;
lStringList : TStringList;
begin
{$IfNDef CodeSiteDisabled}
if isActiveDebugCategory(Category) then
begin
lStringList := TStringList.Create;
lRTTIContext := TRttiContext.Create;
lRTTIObjectType := lRTTIContext.GetType(TypeInfo(T));
if lRTTIObjectType.TypeKind = …Run Code Online (Sandbox Code Playgroud)