hier nochmal die überarbeitete (wenn auch bestimmt nicht eleganteste lösung - aber besser kann ichs nicht
)
Delphi-Quellcode:
function ItunesSong(): string;
var
iTunesApp: OLEVariant;
begin
result := 'iTunes closed';
if FindWindow('iTunes', nil) <> 0 then
begin
try //Itunes rennt?
iTunesApp := CreateOleObject('iTunes.Application'); // iTunes Objekt erzeugen
if not VarIsNull(iTunesApp) then
begin
result := iTunesApp.CurrentTrack.Artist +' - '+ iTunesApp.CurrentTrack.Name;
if not VarIsNull(iTunesApp) then iTunesApp := Unassigned;
end;
except //tritt immer auf, wenn itnues zwar gestartet ist, aber nix wiedergibt!
result := 'Itunes - Stopped';
end;
end;
end;