AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte M3U Playlist Creator

M3U Playlist Creator

Ein Thema von toyoman · begonnen am 20. Feb 2009 · letzter Beitrag vom 17. Nov 2010
Antwort Antwort
Seite 1 von 2  1 2   
toyoman
Registriert seit: 2. Jun 2003
Dieser sogenannte Playlist Creator erstellt auf einfache Art und Weise M3U Playlists mit fixen oder relativen Pfaden. Das Programm ist noch in der Testphase und kann auf Herz und Nieren geprüft werden.

Die Technik sollte grösstenteils schon funktionieren, die Optik ist noch nicht so wie sie sein sollte...

Das Tool inkl. Delphi Sourcecode kann hier runtergeladen werden:

Click für Download (Grösse ca. 1MB)

Bitte die Ini-Datei vor Benutzung anpassen (Pfade für Medien Source und Export Pfad).

Damit das Projekt in Delphi 2007 geöffnet werden kann, müssen die JVCL (Jedi) Komponenten installiert sein. Siehe: http://sourceforge.net/project/showf...group_id=45786

Feedback erwünscht.

Hintergrund zur Entstehung des Tools:
Da meine Musikdaten in vielen Unterordnern liegen wollte ich ein einfaches Tool machen welches mit fixen Pfaden Playlisten erstellen kann. Meine zukünftige Vision für dieses Tool wäre allerdings, dass es sämtliche Verzeichnisse einliest, in eine SQL DB speichert und über ein GUI aus der DB die Media Files ausgewählt und damit eine Playlist erstellt wird. Dies hätte den genialen Nebeneffekt, dass man gleich noch alle Musik schön archiviert hätte und auch noch schön suchen könnte...
Miniaturansicht angehängter Grafiken
playlist_creator_518.jpg  
 
Hybrid666

 
Delphi 7 Personal
 
#2
  Alt 21. Feb 2009, 20:33
Servus,

also hab dein Programm grade mal getestet. Leider ist es für mich nicht nutzbar, ich bekomme von start ab immer einen Fehler wenn er was ins log schreiben will

Ich kann dir leider nicht sagen woran es liegt, da die Fehlermeldungen selbstgemacht aussehen und wohl nicht von Delphi selbst stammen.

Wenn ich ca 10 Fehler wegklicke dann bin ich im hauptprogramm.

Da ichs nicht testen kann mal ne frage: speichert er auch die ID3 infos von mp3 im Winamp Format in die m3u datei? wär ein klasse feature

Edit: bin nun ins hauptfenster gekommen. Ein kleinen bug hab ich gefunden: WEnn ich auch advanced playlist klicke, dann werden die 2 radiobuttons deaktiviert und ich kann nichtmehr auf simple gehen

MfG
  Mit Zitat antworten Zitat
toyoman

 
Delphi 2010 Enterprise
 
#3
  Alt 22. Feb 2009, 14:04
Zitat von Hybrid666:
Servus,

also hab dein Programm grade mal getestet. Leider ist es für mich nicht nutzbar, ich bekomme von start ab immer einen Fehler wenn er was ins log schreiben will

Ich kann dir leider nicht sagen woran es liegt, da die Fehlermeldungen selbstgemacht aussehen und wohl nicht von Delphi selbst stammen.

Wenn ich ca 10 Fehler wegklicke dann bin ich im hauptprogramm.

Da ichs nicht testen kann mal ne frage: speichert er auch die ID3 infos von mp3 im Winamp Format in die m3u datei? wär ein klasse feature

Edit: bin nun ins hauptfenster gekommen. Ein kleinen bug hab ich gefunden: WEnn ich auch advanced playlist klicke, dann werden die 2 radiobuttons deaktiviert und ich kann nichtmehr auf simple gehen

MfG
hallo

könnte daran liegen, dass er das logfile nicht ins userprofil schreiben kann. er will dies unter anwendungsdaten\plc speichern im profil von deinem benutzer (also sprich: c:\documents and settings\...
oder hast du VISTA? auf vista hab ich es nämlich nicht durchgetestet, sollte aber eigentlich auch funzen.

die ID3 infos werden derzeit noch nicht beachtet. das die radiobuttons deaktiviert werden ist bewusst so, weil du wieder auf NEU bzw. NEW klicken sollst um eine neue Liste abzulegen. wenn du während der erstellung den modus wechseln könntest, hätte ich nachher beim speichern ein problem
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms

 
Delphi XE Professional
 
#4
  Alt 22. Feb 2009, 14:27
Hallo

Ein Screenshot vom Programm wäre jeweils wünschenswert!
Thomas
  Mit Zitat antworten Zitat
Hybrid666

 
Delphi 7 Personal
 
#5
  Alt 22. Feb 2009, 21:55
Zitat von toyoman:
Zitat von Hybrid666:
Servus,

also hab dein Programm grade mal getestet. Leider ist es für mich nicht nutzbar, ich bekomme von start ab immer einen Fehler wenn er was ins log schreiben will

Ich kann dir leider nicht sagen woran es liegt, da die Fehlermeldungen selbstgemacht aussehen und wohl nicht von Delphi selbst stammen.

Wenn ich ca 10 Fehler wegklicke dann bin ich im hauptprogramm.

Da ichs nicht testen kann mal ne frage: speichert er auch die ID3 infos von mp3 im Winamp Format in die m3u datei? wär ein klasse feature

Edit: bin nun ins hauptfenster gekommen. Ein kleinen bug hab ich gefunden: WEnn ich auch advanced playlist klicke, dann werden die 2 radiobuttons deaktiviert und ich kann nichtmehr auf simple gehen

MfG
hallo

könnte daran liegen, dass er das logfile nicht ins userprofil schreiben kann. er will dies unter anwendungsdaten\plc speichern im profil von deinem benutzer (also sprich: c:\documents and settings\...
oder hast du VISTA? auf vista hab ich es nämlich nicht durchgetestet, sollte aber eigentlich auch funzen.

die ID3 infos werden derzeit noch nicht beachtet. das die radiobuttons deaktiviert werden ist bewusst so, weil du wieder auf NEU bzw. NEW klicken sollst um eine neue Liste abzulegen. wenn du während der erstellung den modus wechseln könntest, hätte ich nachher beim speichern ein problem
Abend, nein ich hab Windows XP SP3. Eigentlich sollte er dort schreiben können (alle meine Programme schreiben nach %appdata%). Kann es vllt dran liegen das der Ordner in den er schreiben will nicht existiert oder sowas?

Wär toll wenns funktioniert, würde es sehr gerne testen.

MfG
  Mit Zitat antworten Zitat
toyoman

 
Delphi 2010 Enterprise
 
#6
  Alt 22. Feb 2009, 21:58
Zitat von Hybrid666:
Zitat von toyoman:
Zitat von Hybrid666:
Servus,

also hab dein Programm grade mal getestet. Leider ist es für mich nicht nutzbar, ich bekomme von start ab immer einen Fehler wenn er was ins log schreiben will

Ich kann dir leider nicht sagen woran es liegt, da die Fehlermeldungen selbstgemacht aussehen und wohl nicht von Delphi selbst stammen.

Wenn ich ca 10 Fehler wegklicke dann bin ich im hauptprogramm.

Da ichs nicht testen kann mal ne frage: speichert er auch die ID3 infos von mp3 im Winamp Format in die m3u datei? wär ein klasse feature

Edit: bin nun ins hauptfenster gekommen. Ein kleinen bug hab ich gefunden: WEnn ich auch advanced playlist klicke, dann werden die 2 radiobuttons deaktiviert und ich kann nichtmehr auf simple gehen

MfG
hallo

könnte daran liegen, dass er das logfile nicht ins userprofil schreiben kann. er will dies unter anwendungsdaten\plc speichern im profil von deinem benutzer (also sprich: c:\documents and settings\...
oder hast du VISTA? auf vista hab ich es nämlich nicht durchgetestet, sollte aber eigentlich auch funzen.

die ID3 infos werden derzeit noch nicht beachtet. das die radiobuttons deaktiviert werden ist bewusst so, weil du wieder auf NEU bzw. NEW klicken sollst um eine neue Liste abzulegen. wenn du während der erstellung den modus wechseln könntest, hätte ich nachher beim speichern ein problem
Abend, nein ich hab Windows XP SP3. Eigentlich sollte er dort schreiben können (alle meine Programme schreiben nach %appdata%). Kann es vllt dran liegen das der Ordner in den er schreiben will nicht existiert oder sowas?

Wär toll wenns funktioniert, würde es sehr gerne testen.

MfG
ja kannst du mal manuell diese ordnerstruktur anlegen:
C:\Documents and Settings\%benutzername%\Application Data\PLC\Logs
eigentlich sollte das programm dies selber tun. hat er bei mir zumindest. aber scheint bei dir nicht zu funzen.

wenn der pfad vorhanden ist sollte er ja dann schreiben können und somit sollte das programm auch laufen.
  Mit Zitat antworten Zitat
Hybrid666

 
Delphi 7 Personal
 
#7
  Alt 24. Feb 2009, 06:56
daran scheints nicht gelegen zu haben

die selben errors kommen und dahinter hängt nun noch ein "Ungültiger Dateiname".

Edit:

Okay ich weiß nun woran es liegt: dein programm versucht auf biegen und brechen nach c:\Dokumente und Einstellungen\User\Application Data\PLC\Logs zu schreiben. aber ich hab ein deutsches XP, da heißt er ordner leider "Anwendungsdaten" statt application data. Du solltest vielleicht den pfad %appdata%\PLC\Logs verwenden und %appdata% auflösen, hier ein code wie das geht:
Delphi-Quellcode:
function TForm1.GetDirectory: String;
var
  Appdata : String;
begin
  Appdata := SysUtils.GetEnvironmentVariable('appdata');
  if not DirectoryExists (Appdata + '\PLC') then
    mkdir (appdata + '\PLC');
  if not DirectoryExists (Appdata + '\PLC\Logs') then
    mkdir (appdata + '\PLC\Logs');
  result := Appdata + '\PLC\Logs';
end;
MfG
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber

 
Delphi XE Professional
 
#8
  Alt 24. Feb 2009, 08:46
Hi!

Könntest du bitte im ersten Beitrag noch die Größe des Downloads angeben?
Danke!


Ciao, Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
toyoman

 
Delphi 2010 Enterprise
 
#9
  Alt 24. Feb 2009, 08:58
Zitat von Hybrid666:
daran scheints nicht gelegen zu haben

die selben errors kommen und dahinter hängt nun noch ein "Ungültiger Dateiname".

Edit:

Okay ich weiß nun woran es liegt: dein programm versucht auf biegen und brechen nach c:\Dokumente und Einstellungen\User\Application Data\PLC\Logs zu schreiben. aber ich hab ein deutsches XP, da heißt er ordner leider "Anwendungsdaten" statt application data. Du solltest vielleicht den pfad %appdata%\PLC\Logs verwenden und %appdata% auflösen, hier ein code wie das geht:
Delphi-Quellcode:
function TForm1.GetDirectory: String;
var
  Appdata : String;
begin
  Appdata := SysUtils.GetEnvironmentVariable('appdata');
  if not DirectoryExists (Appdata + '\PLC') then
    mkdir (appdata + '\PLC');
  if not DirectoryExists (Appdata + '\PLC\Logs') then
    mkdir (appdata + '\PLC\Logs');
  result := Appdata + '\PLC\Logs';
end;
MfG
du hast recht. hab grad mal nachgeguckt. ich habe eine funktion welche mir das Userprofil zurückgibt (aus der Registry):
Delphi-Quellcode:
function getUserProfilePath : String;
begin
    GetEnvironmentVariable('USERPROFILE', cmdBUffer, SizeOf(cmdBuffer)); {Userprofile Variable auslesen}
    result:=cmdBuffer;
    Profilepath:=cmdBuffer;
end;
allerdings hänge ich danach noch fix die tas_AppData konstante an, welche in meiner myGlobals Unit fix definiert ist (ich arbeite immer auf englischen Systemen).

Delphi-Quellcode:
      // Konfiguration einlesen
      getinipath;
      getusername;

      // Verzeichnis prüfen u. erstellen für Logfile Dateien (Profil\Appdata...)
      chkdir(getuserprofilepath+tas_appdata);
myGlobals:

Delphi-Quellcode:
const
  condatei:string = 'plc_init.con';
  inidatei:string = 'plc_init.ini';
  logdatei:string = 'plc_log.log';
  sqlcondatei:string = 'plc_conn.dat';
  expcdatei:string = 'plc_excp.dat';
  logfilesdir:string = '\Application Data\PLC\Logs';
  tas_appdata:string = '\Application Data\PLC';
  m3u_zeile1 = '#EXTM3U';
  m3u_zeile2 = '#EXTINF:';
werde dies umbauen und diese konstanten ins Ini-File auslagern oder aber deine funktion reinhängen...
  Mit Zitat antworten Zitat
Satty67

 
Delphi 2007 Professional
 
#10
  Alt 24. Feb 2009, 09:34
Die Variable AppData ist nicht nötig, wenn es sowieso Result zugewiesen wird. Dann gibt die obige Function bei Fehlschlagen auch einen ungültigen Pfad zurück?
Delphi-Quellcode:
function TForm1.GetDirectory: String;
begin
  Result := SysUtils.GetEnvironmentVariable('appdata');
  if FileCtrl.ForceDirectories(Result + '\PLC\Logs') then
    Result := Result + '\PLC\Logs';
end;

// Alternativ
function TForm1.GetDirectory(const Default : String): String;
begin
  Result := SysUtils.GetEnvironmentVariable('appdata');
  if FileCtrl.ForceDirectories(Result + '\PLC\Logs') then
    Result := Result + '\PLC\Logselse Result := Default;
end;
Ist jetzt ungetestet, weil ich hier kein passendes Delphi zum ausprobieren hab'. D5 kennt "GetEnvironmentVariable" nicht, gibt die Function den Pfad mit/ohne Delimiter zurück?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 03:23 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