Ver Mensaje Individual
  #3  
Antiguo 25-03-2014
ebeltete ebeltete is offline
Miembro
 
Registrado: may 2003
Posts: 236
Reputación: 22
ebeltete Va por buen camino
esto es algo de lo que hago:
Código Delphi [-]
procedure TID3Tag.ReadTag;
var
  FTagRecord: ID3Struct;
        F:File;


begin

        AssignFile(F, FFileName);
        Reset(F,1);
        Seek(F,FileSize(F)-SizeOf(FTagRecord));
        BlockRead(F, FTagRecord, SizeOf(FTagRecord));
        CloseFile(F);

        if StrLComp(FTagRecord.Magic, ID3Magic, SizeOf(FTagRecord.Magic))<>0 then
  begin
                FillChar(FTagRecord, SizeOf(FTagRecord), ' ');
                StrLCopy(FTagRecord.Magic, ID3Magic, SizeOf(FTagRecord.Magic));
  end;

  with FTagRecord do
  begin


    FTitle := Trim(Copy(Title, 1, SizeOf(Title)));
    FArtist := Trim(Copy(Artist, 1, SizeOf(Artist)));
    FAlbum := Trim(Copy(Album, 1, SizeOf(Album)));
    FYear := Trim(Copy(Year, 1, SizeOf(Album)));
    FComment := Trim(Copy(Comment, 1, SizeOf(Comment)));
    FGenre := ID3GenreName[Genre];
  end;
Con respecto a que otra aplicacion lo use no es el problema, con AssignFile lo solucione, o sea por mas que otro usuario con otra aplicacion este usando el archivo (por ejemplo en un recurso compartido de red), mi aplicacion lo lee igual.
Ahora cuando el archivo tiene la propiedad "solo lectura" no lo puedo leer dese mi aplicacion.
Con respecto de hacer una copia no lo veo viable porque puede ser un archivo demasiado grande y tardaria demasiado en hacer la copia. Gracias
Responder Con Cita