AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Track aus Itunes auslesen

Ein Thema von easteregg · begonnen am 3. Apr 2007 · letzter Beitrag vom 2. Jul 2007
Antwort Antwort
Benutzerbild von easteregg
easteregg

Registriert seit: 26. Mär 2005
174 Beiträge
 
#1

Track aus Itunes auslesen

  Alt 3. Apr 2007, 08:12
heyho,

Ich such für mein Projekt die Möglichkeit den aktuellen ITunes Song auszulesen!
Auf der Suche nach einer Möglichkeit bin ich auf den Thread hier gestoßen: http://www.delphipraxis.net/internal...ghlight=itunes

allerdings ist der thread a) schon etwas älter und b) bringt mich zu einer ganz anderen frage.

Nämlich woher bekomm ich die nötigen .pas Files die da eingebunden werden? Hab mal bisschen im google gesucht, bin aber nicht weiter fündig geworden!
wäre toll wenn mir da jemand helfen könnte!

Das SDK-Kit scheints ja nicht zu sein, was es auf der Homepage zum download gibt oder?

danke schonmal für Hilfe
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#2

Re: Track aus Itunes auslesen

  Alt 3. Apr 2007, 08:49
Hallo

Ich habe mal eine Funktion getCurrentTitle in diesem Thread gepostet.
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von easteregg
easteregg

Registriert seit: 26. Mär 2005
174 Beiträge
 
#3

Re: Track aus Itunes auslesen

  Alt 3. Apr 2007, 11:30
herzlichen dank
für alle die das auch mal schnell brauchen

Delphi-Quellcode:
function ItunesSong(): string;
var
  iTunesApp: OLEVariant;
begin
  // iTunes Objekt erzeugen
  iTunesApp := CreateOleObject('iTunes.Application');
  if not VarIsNull(iTunesApp) then
     begin
      result := iTunesApp.CurrentTrack.Artist +' - '+ iTunesApp.CurrentTrack.Name;
     if not VarIsNull(iTunesApp) then iTunesApp := Unassigned;
  end;
end;
  Mit Zitat antworten Zitat
Benutzerbild von easteregg
easteregg

Registriert seit: 26. Mär 2005
174 Beiträge
 
#4

Re: Track aus Itunes auslesen

  Alt 3. Apr 2007, 14:54
argh, ein problem:

wenn itunes zu ist und ich das ganze start, wird itunes geöffnet, wie kann ich das noch umgehen?
über die api geht das ja schlecht, denn die is ja nur da, wenn itunes gestartet hast.

wie prüf ich das aber vorher?
kennt jemand den handle namen von Itunes?
  Mit Zitat antworten Zitat
Benutzerbild von arbu man
arbu man

Registriert seit: 3. Nov 2004
Ort: Krefeld
1.108 Beiträge
 
Delphi 7 Professional
 
#5

Re: Track aus Itunes auslesen

  Alt 3. Apr 2007, 14:56
Benutze doch WinSpy das gibt es hier in der DP
Björn
>> http://bsnx.net <<
Virtual DP Stammtisch v1.0"iw" am 19.09.2007 - ich war dabei!
  Mit Zitat antworten Zitat
Benutzerbild von easteregg
easteregg

Registriert seit: 26. Mär 2005
174 Beiträge
 
#6

Re: Track aus Itunes auslesen

  Alt 3. Apr 2007, 14:59
danke für den tipp! da schau ich gleich mal nach

edit: das programm is ja genial! danke dafür!!!
  Mit Zitat antworten Zitat
Benutzerbild von easteregg
easteregg

Registriert seit: 26. Mär 2005
174 Beiträge
 
#7

Re: Track aus Itunes auslesen

  Alt 3. Apr 2007, 15:20
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;
  Mit Zitat antworten Zitat
Benutzerbild von ste_ett
ste_ett

Registriert seit: 10. Sep 2004
Ort: Dülmen
464 Beiträge
 
Delphi 7 Professional
 
#8

Re: Track aus Itunes auslesen

  Alt 3. Apr 2007, 15:25
Prüf doch vor dem Zugriff, ob "iTunesApp.CurrentTrack" existiert, dann brauchste auch keinen except-Block.

- edit -

Ungetestet, da ich hier kein ITunes habe.

Delphi-Quellcode:
function GetCurrentITunesSong(): String;
var
  iTunesApp, iTunesCurrentTrack: OleVariant;
begin
  Result := 'iTunes closed';
  if (FindWindow('iTunes', nil) <> 0) then
  begin
    iTunesApp := CreateOleObject('iTunes.Application'); // iTunes Objekt erzeugen
    if (not VarIsNull(iTunesApp)) then
    begin
      iTunesCurrentTrack := iTunesApp.CurrentTrack;
      if (not VarIsNull(iTunesCurrentTrack)) then
      begin
        Result := iTunesApp.CurrentTrack.Artist +' - '+ iTunesApp.CurrentTrack.Name;
        iTunesCurrentTrack := Unassigned;
      end;
      iTunesApp := Unassigned;
    end;
  end;
end;
Stefan
"Geht nicht!" ist keine Fehlerbeschreibung und "Hab ich schon versucht!" keine Antwort!

Hey, it compiles! Ship it!
  Mit Zitat antworten Zitat
Benutzerbild von arne99
arne99

Registriert seit: 11. Jan 2005
Ort: Hamburg
158 Beiträge
 
Turbo Delphi für Win32
 
#9

Re: Track aus Itunes auslesen

  Alt 2. Jul 2007, 11:47
[DCC Error] uMain.pas(52): E2003 Undeclared identifier: 'CreateOLEObject'

Delphi-Quellcode:
function GetCurrentITunesSong(): String;
var
  iTunesApp, iTunesCurrentTrack: OLEVariant;
begin
  Result := 'iTunes closed';
  if (FindWindow('iTunes', nil) <> 0) then
  begin
    iTunesApp := CreateOLEObject('iTunes.Application'); // iTunes Objekt erzeugen
    if (not VarIsNull(iTunesApp)) then
    begin
      iTunesCurrentTrack := iTunesApp.CurrentTrack;
      if (not VarIsNull(iTunesCurrentTrack)) then
      begin
        Result := iTunesApp.CurrentTrack.Artist +' - '+ iTunesApp.CurrentTrack.Name;
        iTunesCurrentTrack := Unassigned;
      end;
      iTunesApp := Unassigned;
    end;
  end;
end;
Original Code, implementiert. Einziger Fehler: OLEObject kann nicht erzeugt werden. Warum?

Meine Lösung:
Nat. sollte man ComObj implementieren und desweiteren mit Delphi 2007 auch Variants als VarTyp verwenden.
Arne
// u know? ID Service www.topsta.de
  Mit Zitat antworten Zitat
Benutzerbild von arne99
arne99

Registriert seit: 11. Jan 2005
Ort: Hamburg
158 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: Track aus Itunes auslesen

  Alt 2. Jul 2007, 12:18
Dennoch: Es funktioniert mit der neuesten Version von iTunes, WinXP SP2 und diesem Code nicht!

Ich nochmal: Edit!

Also, solange iTunes laeuft aber kein Lied spielt gibt es eine Zugriffsverletzung. Das muesste man noch abfangen. Gruß Arne
Arne
// u know? ID Service www.topsta.de
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:15 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz