Re: iTunes-Track herausfinden
So hier habe ich mein Testsource mal angehängt:
Delphi-Quellcode:
Und das Event kommt nicht ????? Ich weiss wirklich nicht, was hier falsch sein sollte....
unit MainForm;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, iTunesLib_TLB, iTunesLibEvents, ExtCtrls, StdCtrls; type TfrmMain = class(TForm) Label1: TLabel; procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); procedure TrackChangedEvent(Sender: TObject; iTrack: OleVariant); private iTunesApp: IiTunes; EventManager: TiTunesLibIiTunesEvents; public end; var frmMain: TfrmMain; implementation {$R *.dfm} procedure TfrmMain.FormCreate(Sender: TObject); begin iTunesApp := COiTunesApp.Create; EventManager := TiTunesLibIiTunesEvents.Create(Self); EventManager.OnPlayerPlayingTrackChangedEvent := TrackChangedEvent; EventManager.Connect(iTunesApp); end; procedure TfrmMain.TrackChangedEvent(Sender: TObject; iTrack: OleVariant); var Track: IITTrack; begin Assert(VarType(iTrack) = varDispatch); Track := IDispatch(iTrack) as IITTrack; Label1.Caption := Track.Album; end; procedure TfrmMain.FormDestroy(Sender: TObject); begin EventManager.Disconnect; FreeAndNil(EventManager); // iTunesApp.Quit; iTunesApp := nil; end; end. |
Re: iTunes-Track herausfinden
Hi,
da ich im Moment nur eine Turbo-Version hab, mit der ich keine Typbibliothek einbinden kann, müsste ich erstmal raten: ich vermute mal, dass du erst connecten musst, um dann das Ereignis zuzuweisen... Chris |
Re: iTunes-Track herausfinden
Hi,
erst Connect und dann das Ereignis initiieren habe ich auch schon gemacht... Ich benutze ja auch Turbo-Delphi... Units kannst du ja einbinden und dann create() etc... Naja ich brauche das ja nicht dringend, ist nur um mich in das Thema einzuarbeiten. Wollte ein kleines Tool, like MyFairTunes basteln, jedoch mit vielen kleinen Tools, wie z.B. alle Tracks ohne Artwork anzeigen etc.... Ich denke irgendwann finde ich einen weg für die Events... Danke erst mal, würde mich freuen, wenn jemand einen guten Tip hat. Sollte ich vorher was finden, werde ich es hier Posten... |
Re: iTunes-Track herausfinden
Ahoi... sorry für die späte Antwort, aber ich hatte den Thread überhaupt nicht gesehen. Für die Akten: In der erwähnten iTunes-Version gehen Events gar nicht, muss wohl ein Bug gewesen sein. Das war aber nicht der einzige Bug :) Ich hab zu der Zeit an einem Projekt gearbeitet wo es unter anderem auch um die Interaktion mit iTunes ging - ich habe mir tagelang die Haare gerauft bis ich dann letzten Endes in langen Debuggingsessions rausgefunden hatte, dass iTunes 7.0.0.18 da gar keine Events sendet. Das war besonders übel weil ich einen Releasetermin zu halten hatte und an dem Problem gar nichts machen konnte. Inzwischen sollte das aber behoben sein, wenn ich mich recht entsinne erschien dann irgendwann ne neuere Version in der es wieder ging...
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:56 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