Hi all, I'm trying to derive a new class TSortFtpSend from synapse TFtpSend class, which implements a quicksort algo based on published property passed to this method. I'm having some troubles with this code because GetPropValue seems does not find the published property I need:
function TSortFtpSend.DoCompareByProps(AItem1: Pointer; AItem2: Pointer; const ASortProps: array of string; AAscendingOrder: Boolean): integer; var i : integer; lsPropName : string; lValue1 : variant; lValue2 : variant; begin result := 0; // try for i := Low(ASortProps) to High(ASortProps) do begin lsPropName := ASortProps[i]; writeln(TFTPListRec(AItem1).FileName); writeln(TFTPListRec(AItem1).FileSize); lValue1 := GetPropValue(TFTPListRec(AItem1),lsPropName); // <== Here I got the Unknown property FileSize exception lValue2 := GetPropValue(TFTPListRec(AItem2),lsPropName); [CUT] It seems GetPropValue cannot find published property FileSize but the writeln statement works well printing the exact value, and of course the properties are published. Someone has an idea why that is not working here ? Thanks Antonio -- Antonio Sanguigni alias slapshot ---------------------------------------------------------------------- GioveLUG (Linux User Group) - http://www.giovelug.org Edupup (Educational distro) - http://www.pieroni.biz/edupup _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal