Ich möchte aus der Playliste 13 Titel na meine
DLL übergeben
Bei der ersten übergabe gibt es kein Problem
Bei der zweiten muss ich die TStringList löschen bis auf den Clear ist in der Funktion ansonsten alles gleich.
Nun möchte ich wissen ob man diese verkürzen kann ohne alles doppelt zu schreiben.
Delphi-Quellcode:
procedure BASS_WINAMPVIS_SetPlaylistEntries(PlPos : integer; PlEntry : integer;
Title : string;
changed : boolean); stdCall;
Var
IntI : integer;
begin
try
if not changed then
begin
if PlaylistEntries = nil then
PlaylistEntries := TStringList.Create;
PlaylistEntries.CommaText := Title;
if (PlPos + PlEntry) > 13 then
begin
PlaylistEntries.Free;
exit;
end;
for IntI := PlPos to PlaylistEntries.Count do
PlaylistEntries.Add(PlaylistEntries.Strings[IntI]);
end else
begin
PlaylistEntries.clear; //>>>>>>>>> einzigste unterschied!
if PlaylistEntries = nil then
PlaylistEntries := TStringList.Create;
PlaylistEntries.CommaText := Title;
if (PlPos + PlEntry) > 13 then
begin
PlaylistEntries.Free;
exit;
end;
for IntI := PlPos to PlaylistEntries.Count do
PlaylistEntries.Add(PlaylistEntries.Strings[IntI]);
end;
except
PlaylistEntries.Free;
end;
end;
Noch ne frage wie lang kann Title sein wenn er als string übergeben wird .. 'PlaylistEntries.CommaText'
Gruss Emil