Ich habe die Units gerade nochmal verglichen und es sind definitiv dieselben, die ich gerade unter D2009 benutze! Wie oben erwähnt, gibts noch ein paar Warnungen und Hinweise, die ich nicht umgesetzt habe.
Wenn du diese Warnungen und Hinweise in den Compiler-Optionen als "Error" deklariert hast, stoppt der Compiler da natürlich.
Lass mal ein paar Zeilennummern und die entsprechenden Fehler sehen...
Den einzigen String[4] in dEXIF ist in der folgenden Funktion:
Delphi-Quellcode:
function tEndInd.Put32s(data:Longint):ansistring;
var
data2:integer;
buffer:string[4] absolute data2;
bbuff:ansichar;
begin
data2 := data;
if MotorolaOrder then
begin
bbuff := buffer[1];
buffer[1] := buffer[4];
buffer[4] := bbuff;
bbuff := buffer[2];
buffer[2] := buffer[3];
buffer[3] := bbuff;
end;
result := buffer;
end;
Wo musstest du den da zusätzlich Char durch AnsiChar ersetzen? Das ist exakt die Datei-Version, die ich gepostet habe!? Ich habe die Datei gerade extra nochmal runtergeladen.
Außerdem wäre es nett, wie oben erwähnt, wenn du die geänderten Units auch uns zur Verfügung stellen würdest.