Citat:
viking13: Uleteo sam u neku gužvu ovih dana. Konačno nađoh vremena da pogledam malo ovaj kod koji si poslao i da razmislim o njemu.
Potencijalno si u pravu, ali LLength nije jednostavan Length(ASource). Da je to slučaj, bio bi 200% u pravu!
Ovako, nisam siguran, jer ne vidim šta rade ove IndyMin i IndyMax funkcije i treba provuci neki test primer kroz ceo kod da se vidi koliko to stvarno vraća bajtova.
Code:
function IndyMax(const AValueOne, AValueTwo: Int64): Int64;
{$IFDEF USEINLINE}inline;{$ENDIF}
begin
if AValueOne < AValueTwo then begin
Result := AValueTwo;
end else begin
Result := AValueOne;
end;
end;
function IndyMax(const AValueOne, AValueTwo: LongInt): LongInt;
{$IFDEF USEINLINE}inline;{$ENDIF}
begin
if AValueOne < AValueTwo then begin
Result := AValueTwo;
end else begin
Result := AValueOne;
end;
end;
function IndyMax(const AValueOne, AValueTwo: Word): Word;
{$IFDEF USEINLINE}inline;{$ENDIF}
begin
if AValueOne < AValueTwo then begin
Result := AValueTwo;
end else begin
Result := AValueOne;
end;
end;
Nista spektakularno, dakle, rekao bih da tu ipak ima potencijalnih problema... Mozda postoji paralelna verzija Indy-ja koja je in-house prilagodjavana za D2009, pa jos nije spojena sa ovom?
Odlicna zapazanja! Javlja mi se da ce funkcija ElementToCharLen() biti prilicno popularna :)