Registriert seit: 10. Jun 2003
Ort: Berlin
9.353 Beiträge
Delphi 11 Alexandria
|
AW: (ObjectList) Sort -> AccessViolation
6. Aug 2011, 22:04
Die beiden Varianten machen schlicht nicht das gleiche (insbesondere im Falle von isAudioOnly = False bei beiden Objekten).
Dein funktionierender Code macht das:
Delphi-Quellcode:
function CompareAudioAtEnd(input1, input2: Pointer): Integer;
var
b1, b2: Boolean;
begin
b1 := TMMItem(input1).isAudioOnly;
b2 := TMMItem(input2).isAudioOnly;
if not (b1 xor b2) then
Result := CompareText(TMMItem(input1).InputName, TMMItem(input2).InputName)
else if b1 then
Result := 1
else
Result := -1;
end;
Wobei im Falle von unterschiedlichen Werten für isAudioOnly das Verhalten dennoch anders ist. Aber ich schätze mal dieses ist gewollt.
Sebastian Jänicke Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
Geändert von jaenicke ( 6. Aug 2011 um 22:06 Uhr)
|