Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Mp3 einbinden (https://www.delphipraxis.net/82611-mp3-einbinden.html)

PudelDesTodes 18. Dez 2006 18:43

Re: Mp3 einbinden
 
Liste der Anhänge anzeigen (Anzahl: 1)
hm ^^ oke.. darf mir dann eins aussuchen? ;)
das erste sieht irgendwie einfacher aus.

Und wo schreib ich das hin? an die stelle wo sonst der Pfad steht?
Also bei Mediaplayer1.Filename:= blabla?
Oder wo?

maah..ich hab echt von nix ne ahnung

und jetzt kommt ganze Zeit Fehlermeldung (siehe Anhang) und ich weiß net warum :'(


hm..
GetFilePath(application.exename)+'musik.mp3';

Was muss ich dann für application hinschreiben?
und exename.. is dann nur Pschnee (so heißt dat ^^) oder Pschnee.exe

Gentleman 18. Dez 2006 19:08

Re: Mp3 einbinden
 
Also angenommen du hast die Mp3-Datei im selben Verzeichnis liegen, wie auch deine Exe-Datei, dann machst du folgendes:
  • Du suchst dir den Pfad der Programmdatei, da du den ja ganz einfach rausbekommen kannst ... Das ganze geht folgendermaßen:
    Application.Exename, der Rückgabewert dieser Funktion ist der gesamte Pfad zur Programmdatei, also z.B. "C:\Programme\MeinProgramm\MP3.exe"
  • Da du aber nur den Pfad zur Programmdati brauchst (weil deine Mp3-Datei im selben Verzeichnis liegt) suchst du dir nur den Pfad, ohne Dateiname:
    ExtractFilePath(Application.Exename) diese Funtion liefert dir nur den Pfad, im Beispiel wäre es also "C:\Programme\MeinProgramm\"
  • Den Dateinamen der Mp3 zu dem gerade herausgefunden Pfad hinzufügen, dass heißt also du packst einfach Pfad und bekannten Dateinamen in einen String:
    ExtractFilePath(Application.Exename) + 'meine_mp3.mp3';
    Ergebnis: "C:\Programme\MeinProgramm\meine_mp3.mp3"
  • Das Ganze musst du nun einfach als FileName für den Mediaplayer zuweisen, also:
    MP.FileName:= ExtractFilePath(Application.Exename) + 'meine_mp3.mp3';

Gruß,
Lennard

PudelDesTodes 18. Dez 2006 19:40

Re: Mp3 einbinden
 
Zitat:

* Den Dateinamen der Mp3 zu dem gerade herausgefunden Pfad hinzufügen, dass heißt also du packst einfach Pfad und bekannten Dateinamen in einen String:
ExtractFilePath(Application.Exename) + 'meine_mp3.mp3';
Ergebnis: "C:\Programme\MeinProgramm\meine_mp3.mp3"

* Das Ganze musst du nun einfach als FileName für den Mediaplayer zuweisen, also:
MP.FileName:= ExtractFilePath(Application.Exename) + 'meine_mp3.mp3';

aaalso
mal sehen ob ich das richtig verstanden hab..

Mein Pfad zur Exe lautet:
C:\Dokumente und Einstellungen\HP_Besitzer\Eigene Dateien\Schneemannx
Wobei Schneemannx der Ordner für das Projekt ist.

Muss ich jetzt schreiben

MediaPlayer1.Filename:= ExtractFilepath(C:\Dokumente und Einstellungen\HP_Besitzer\Eigene Dateien\Schneemannx) + 'ja-der-schnee.mp3'; ?

Oder ohne Klammer? oder Mp3 in die Klammer?


hm.. hab das jetzt mal so eingegeben,,da wird immer fehler angezeigt:

undefinierter bezeichner C
Semikolon fehlt
ungültoges Zeichen in Eingabedatei "\"
Verwendete Unit ... kann nicht kompiliert werden (Fataler fehler °°)

Darkchild 20. Dez 2006 14:01

Re: Mp3 einbinden
 
Hallo,

mal eine kurze gegenfrage:

Muss es immer diese bestimmte MP3 sein oder soll der Benutzer die Möglichkeit haben evt. eine beliebige Mp3 von seinem Rechner zu wählen und diese wird dann immer wieder abgespielt und wenn er die Nase von dem lied voll hat dann kann er eine andere Wählen ?

Denn das könntest Du recht simple mit dem OpenDialog erledigen und dann nur FileName an den MediaPlayer übergeben.

Gruss
Darkchild

inherited 20. Dez 2006 14:08

Re: Mp3 einbinden
 
Du sollst ja anstelle des Pfads "ParamStr(0)" nehmen, da dieser immer (egal wo die Exe ausgeführt wird) den Ort, wo sie ausgeführt wird (inklusive Dateiname) beinhaltet. Da der Pfad aber nicht zB C:\test\test.exemeinemp3.mp3 ist, sondern C:\test\meinemp3.mp3 muss man den Dateinamen abschneiden. Das funktioniert ganz einfach mit ExtractFilePath.

Muetze1 20. Dez 2006 14:13

Re: Mp3 einbinden
 
Zitat:

Zitat von PudelDesTodes
aaalso
mal sehen ob ich das richtig verstanden hab..

Mein Pfad zur Exe lautet:
C:\Dokumente und Einstellungen\HP_Besitzer\Eigene Dateien\Schneemannx
Wobei Schneemannx der Ordner für das Projekt ist.

Muss ich jetzt schreiben

MediaPlayer1.Filename:= ExtractFilepath(C:\Dokumente und Einstellungen\HP_Besitzer\Eigene Dateien\Schneemannx) + 'ja-der-schnee.mp3'; ?

Nein, schliesslich hat der letzte Punkt doch schon alles geschrieben:

Delphi-Quellcode:
 MP.FileName:= ExtractFilePath(Application.Exename) + 'meine_mp3.mp3';
ExtractFilePath(Application.EXEName) liefert dir immer den Pfad, wo die EXE gerade ausgeführt wird. Wenn du die EXE somit irgendwo hinkopierst und startest, dann liefert dir die Funktion wieder den richtigen, neuen, Pfad.

PudelDesTodes 20. Dez 2006 18:16

Re: Mp3 einbinden
 
Also hab jetzt eingesetzt

MediaPlayer1.FileName:= ExtractFilePath(Application.Exename) + 'ja-der-Schnee.mp3';


jetzt kommt zumindest kein gemecker mehr am Code..

Aber diese blöde Fehlermeldung die ich weiter oben gepostet hab kommt immernoch.
Und dann deutet ein Pfeil bei der Unit auf Application.Run;

da es vorher alles lief muss es irgendwie mitdem player zusammenhängen.

inherited 20. Dez 2006 18:42

Re: Mp3 einbinden
 
Welche Fehlermeldung denn, ich find da keine :gruebel:

Thorben_K 21. Dez 2006 15:13

Re: Mp3 einbinden
 
als ich dir das in der schule gemacht, ähm meine natürlich erklärt) habe, lief alles, würde gerne mal wissen was du geschaffst hast...

also poste den quell text, (oder schick in mir) und man kann dir auch helfen... :)

gruss Thorben

PudelDesTodes 21. Dez 2006 18:54

Re: Mp3 einbinden
 
Zitat:

Zitat von inherited
Welche Fehlermeldung denn, ich find da keine :gruebel:

Da müsste ein Anhang sein.. bei meinem thread nach den 2 Vorschlägen

okidoki@Thorben


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:24 Uhr.
Seite 2 von 2     12   

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