Hi,
hehe sry für den komischen Namen mir is nichts besseres eingefallen
Also ich möchte:
-ein Stück einer Datei auslesen
-in einen String umwandel
-dann wieder in einen Buffer laden
-und die Stücke wieder in einer Datei zusammen setzen
jetzt fragt ihr euch warscheinlich warum
das ist teil eines filesends was ich euch mal ersparen wollte
hab schonmal was versucht aber es funzt noch nicht so wie ich es will
Delphi-Quellcode:
procedure Tfrm_server.Button1Click(Sender: TObject);
var
Buffer,Buffer2: array[0..4095] of Byte;
s_send:string;
fs_file,fs_file2:Tfilestream;
i:integer;
begin
fs_file:=Tfilestream.create('D:\a.mp3',fmOpenRead or fmShareDenyWrite);
while True do
begin
s_send:='';
fs_file2:=TFilestream.Create('X:\a.mp3', fmCreate or fmShareDenyWrite);
fs_file.read(Buffer,sizeof(Buffer));
for I := 0 to sizeof(buffer) do
s_send:=s_send+pchar(@buffer[i]);
for I := 1 to length(s_send) do
Buffer2[i-1]:=byte(s_send[i]);//hier Fehler
fs_file2.Position:=fs_file2.size;
fs_file2.WriteBuffer(Buffer2,sizeof(Buffer2));
if fs_file.Position>=fs_file.Size then
begin
fs_file2.free;
exit;
end;
fs_file2.free;
end;
end;
wenn die while Schleife das zweite mal durchläuft gibt es dort folgenden Fehler:
Zitat:
access violantion at 0x7e9399e6: read of adress 0x7e9399e6.
was kann ich an dem Code verbessern hab das jetzt einfach mal nach Gefühl gemacht
mfg
gandime