AGB  ·  Datenschutz  ·  Impressum  







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

Stammverzeichnis ändern?

Ein Thema von SmokyDieter · begonnen am 18. Dez 2012 · letzter Beitrag vom 18. Dez 2012
Antwort Antwort
SmokyDieter

Registriert seit: 18. Dez 2012
3 Beiträge
 
#1

Stammverzeichnis ändern?

  Alt 18. Dez 2012, 20:39
Also, habe folgendes Problem:

programmiere einen mp3 - Player für die schule; fürs auslesen der id3 Tag benutze ich mp3fileutils.

Nun habe ich das problem, dass immer, wenn man die procedure ausführt, die neue mp3 dateien zur bibiothek hinzufügt und auch gleich die id3 tags ausliiest, delphi zum beispiel den assignfile befehl nicht mehr korrekt ausführt und die file, die er erstellen soll, nicht mehr im stammverzeichnis (so nennt man doch das verzeichnis in dem sich die exe befindet, oder? ), sondern in dem verzeichnis erstellt, aus dem man kurz zuvor die dateien eingelesen hat... auch die procedure, die im stammverzeichnis nach den playlistdateien sucht, funktioniert nicht mehr...

kann mir jemand so helfen, oder braucht ihr dafür den code??

liebe grüße und schon mal dankeschön im voraus

Dieter
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#2

AW: Stammverzeichnis ändern?

  Alt 18. Dez 2012, 20:43
Hallo und willkommen in der ,

ein bisschen Quelltext wäre nicht schlecht. Hast Du denn mal die Pfade überprüft, wo etwas hingeschrieben wird oder gelesen wird ? Das Verzeichnis wo die EXE liegt ermittelst Du mit ExtractFilePath(Application.ExeName)
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#3

AW: Stammverzeichnis ändern?

  Alt 18. Dez 2012, 21:03
@Smoky

Evtl. suchst du GetCurrentDir zum auslesen und SetCurrentDir() zum setzten des aktuellen Verzeichnisses. Man kann das nutzen, macht wohl aber kaum einer. Besser ist der Tipp von RWarnecke, denn man weiß nicht wer mal gerade das aktuelle Verzeichnis wechselt. Packe also immer den Pfad vor den Dateinamen, dann gibt es kaum Probleme.
  Mit Zitat antworten Zitat
SmokyDieter

Registriert seit: 18. Dez 2012
3 Beiträge
 
#4

AW: Stammverzeichnis ändern?

  Alt 18. Dez 2012, 21:11
ok, vielen dank schonmal für die antwort, und hier der code:

for i := 0 to (opendialog.files.count -1) do
begin

stream := TFileStream.Create(Opendialog.Files[i], fmOpenRead or fmShareDenyWrite);
Id3v2Tag.ReadFromStream(stream);

if Not Id3v2Tag.exists then stream.Seek(0, soFromBeginning)
else stream.Seek(Id3v2Tag.size, soFromBeginning);

MpegInfo.LoadFromStream(Stream);
Id3v1Tag.ReadFromStream(stream);
stream.free;

Title := ID3v1Tag.Title;
Artist := ID3v1Tag.Artist;
Album := ID3v1Tag.Album;
Genre := ID3v1Tag.Genre;
Duration := MPegInfo.Duration;
Year := ID3v1Tag.Year;

path := opendialog.Files[i];



save(path, Title, Artist, Album, Genre, Year, Duration);
end;

danach treten die genannten probleme auf: assignfile(playlistdata, 'playlist1.lst'); rewrite(playlistdata); führt also zum beispiel nicht mehr wie gewünscht dazu, dass im verzeichnis, in dem auch die exe liegt, eine entsprechende datei erzeugt wird, sondern die datei befindet sich dann in dem verzeichnis, aus dem der opendialog seine files geladen hat...

einige der funktionen befinden sich in einer extra unit, soll ich die alle raussuchen und mit reinposten?

danke schonmal

Dieter
  Mit Zitat antworten Zitat
SmokyDieter

Registriert seit: 18. Dez 2012
3 Beiträge
 
#5

AW: Stammverzeichnis ändern?

  Alt 18. Dez 2012, 21:16
ok, vielen dank popov, ich werds bei ze8ten mal ausprobieren
danke für die schnelle hilfe

Grüße, Dieter
  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 03:50 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