1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90:
| var aHdl :Integer; aBuf:Array[1..40000] of byte; x1,y1,x2,y2,x3,y3 : String; Gelesen: LongInt; zahltt : string; f:file; aStream, aStream2: TMemoryStream; TYPE Daten = RECORD Name: String[255]; Grosse: String[255]; END; Gesamte_Daten = ARRAY [1..100] OF Daten; VAR Datensatz: Gesamte_Daten; i: 1..100; Datei: FILE OF Gesamte_Daten; BEGIN
Assign (Datei, 'daten.dat'); {$I-} Reset (Datei); Read (Datei, Datensatz); Close (Datei); {$I+} IF IORESULT <> 0 THEN ; REPEAT
begin aHdl:=FileOpen(ParamStr(0),fmShareDenyNone or fmOpenRead); FileSeek(aHdl,ExeSize,0); i := 1; x1 := (Datensatz[i].Name); y1 := (Datensatz[i].Grosse); i := 2; x2 := (Datensatz[i].Name); y2 := (Datensatz[i].Grosse); i := 3; x3 := (Datensatz[i].Name); y3 := (Datensatz[i].Grosse);
FileSeek(aHdl,ExeSize + strtoint(y1) + strtoint(y2) + strtoint(y3),0); //Daten AssignFile(f, 'daten.dat'); ReWrite(f,1); Gelesen:=FileRead(aHdl,aBuf,SizeOf(aBuf)); while Gelesen>0 do begin BlockWrite(f,aBuf,Gelesen); Gelesen:=FileRead(aHdl,aBuf,SizeOf(aBuf)); end; CloseFile(f); FileClose(aHdl);
FileSeek(aHdl,ExeSize,0); // File1 AssignFile(f, x1); ReWrite(f,1); Gelesen:=FileRead(aHdl,aBuf,SizeOf(aBuf)); while Gelesen>0 do begin BlockWrite(f,aBuf,Gelesen); Gelesen:=FileRead(aHdl,aBuf,SizeOf(aBuf)); end; CloseFile(f); FileClose(aHdl);
FileSeek(aHdl,ExeSize + strtoint(y1),0); // File2 AssignFile(f, x2); ReWrite(f,1); Gelesen:=FileRead(aHdl,aBuf,SizeOf(aBuf)); while Gelesen>0 do begin BlockWrite(f,aBuf,Gelesen); Gelesen:=FileRead(aHdl,aBuf,SizeOf(aBuf)); end; CloseFile(f); FileClose(aHdl);
IF not (Datensatz[3].Name = '') then begin FileSeek(aHdl,ExeSize + strtoint(y1) + strtoint(y2),0); // File2 AssignFile(f, x2); ReWrite(f,1); Gelesen:=FileRead(aHdl,aBuf,SizeOf(aBuf)); while Gelesen>0 do begin BlockWrite(f,aBuf,Gelesen); Gelesen:=FileRead(aHdl,aBuf,SizeOf(aBuf)); end; CloseFile(f); FileClose(aHdl); end; |