Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#30

Re: WMA Tags lesen und SCHREIBEN

  Alt 30. Sep 2006, 17:44
Zitat:
Der String wird terminiert. Das mit dem Copy wird auch mit deinem Prinzip sehr schwer, da sich die Zeichenfolge in der einen Datei z.B. 5 Zeichen lang ist und in der Anderen z.B. 7. Wir sollten dem Fehler auf den Grund gehen, anders geht es nicht, selbst wenn ist es sehr schlecht und fehleranfällig.
Ja ! Versuche dir ja zu helfen.
Hätte auch eine Lösung anzubieten.

Simple


Delphi-Quellcode:
Var
RTitle: Shortstring;
RArtist: Shortstring;
 
procedure TForm1.OpenPBClick(Sender: TObject);
var
  TagsData: PTagsData;
begin
  if not opendialog1.Execute then
    exit;
  ClearAll;
  lblFileName.Caption := opendialog1.FileName;
  SavePB.Enabled := true;
  New(TagsData);
  try
    OpenWMAFile(opendialog1.FileName, TagsData);
    fFilesize.Text := inttostr(TagsData.FileSize) + ' bytes';
    fDuration.Text := DurationToStr(TagsData.Duration, true) + ' sec ';
    fBitRate.Text := inttostr(TagsData.BitRate div 1000) + ' kbit';
    fVBR.Text := booltostr(Tagsdata.VBR, true);
    fEncoder.Text := TagsData.Version;
    fGenre.Text := TagsData.Genre;
    fArtist.Text := TagsData.Author;
    fComposer.Text := TagsData.Composer;
    fTitle.Text := TagsData.Title;
    fAlbum.Text := TagsData.Album;
    fYear.Text := TagsData.Year;
    fTrack.Text := TagsData.Track;
    fURL.Text := TagsData.Url;
    fCopyRight.Text := TagsData.CopyRight;
    fComments.Text := TagsData.Comments;
    fLyrics.Text := TagsData.Lyrics;
  finally
    DisPose(TagsData);
  end;
  // Schau hier das wars!
  RTitle := fTitle.Text;
  RArtist := fArtis.Text;
  s := RArtist + ' - ' + RTitle + ' [' + trim(DurationMinSec(IntToStr(GetSongLength))) + ']';
end;
Bei mir wird beim Debuggen alles einwandfrei ohne zusätze angezeigt.

EDIT: Könnte reichen wenn du deine Strings mal nach ShortString ändern würdest!

Gruß
  Mit Zitat antworten Zitat