Delphi-PRAXiS
Seite 3 von 5     123 45      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi SchredderProg (mit source) gesucht! (https://www.delphipraxis.net/23613-schredderprog-mit-source-gesucht.html)

Meflin 3. Jul 2004 14:49

Re: SchredderProg (mit source) gesucht!
 
Zitat:

Zitat von Ultimator
Probier das doch mal so:
Delphi-Quellcode:
procedure TForm1.ShrederFile(Wieoft:Integer);
const Buffer = 1024;
var
  arr: array [1..Buffer] of byte;
  fi: file;
  i, n, Z: integer;
begin
Z:=0
if OpenDialog1.Execute then
  begin
    repeat
    AssignFile(fi, OpenDialog1.FileName);
    Reset(fi, 1);
    n := FileSize(fi);
    FillChar(arr, SizeOf(arr), #0);
    for i := 1 to n div Buffer do
    begin
      BlockWrite(fi, arr, n mod Buffer);
    end;
    CloseFile(fi);
    Erase(fi);
  end;
 inc(Z);
until Z=Wieoft;
end;
Ich habs zwar jetzt nicht getestet, müsste aber gehen.

EINEGNINITIATIVE :|

das eigeninitative könntest du ruhig so schreiben:
EIGENINITIATIVE

Ultimator 3. Jul 2004 14:51

Re: SchredderProg (mit source) gesucht!
 
Stimmt: EIGENINITIATIVE :mrgreen:

HW764 3. Jul 2004 15:00

Re: SchredderProg (mit source) gesucht!
 
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
const Buffer = 1024;
var
  arr: array [1..Buffer] of byte;
  fi: file;
  i, n: integer;
begin
  if OpenDialog1.Execute then
  begin
    AssignFile(fi, OpenDialog1.FileName);
    Reset(fi, 1);
    n := FileSize(fi);
    FillChar(arr, SizeOf(arr), #0);
        FillChar(arr, SizeOf(arr), #0);
            FillChar(arr, SizeOf(arr), #0);
                FillChar(arr, SizeOf(arr), #0);
                    FillChar(arr, SizeOf(arr), #0);

    for i := 1 to n div Buffer do
    begin
      BlockWrite(fi, arr, n mod Buffer);
    end;
    CloseFile(fi);
    Erase(fi);
  end;
end;
So, stimmt der Code, er müsste es jetzt 5 mal überschreiben!
Jaja, eigeninitiative...

d3g 3. Jul 2004 15:02

Re: SchredderProg (mit source) gesucht!
 
Du musst mit unterschiedlichen Werten überschreiben. Zuerst $00, dann $FF, dann $00, dann $F0, dann $0F, dann $00, wenn ich mich richtig erinnere.

Außerdem ist dein Code sinnlos. Versuch ihn zu verstehen, bevor du ihn änderst.

HW764 3. Jul 2004 15:11

Re: SchredderProg (mit source) gesucht!
 
Delphi-Quellcode:
procedure TForm1.SpeedButton1Click(Sender: TObject);
const Buffer = 1024;
var
  arr: array [1..Buffer] of byte;
  fi: file;
  i, n: integer;
begin
  if OpenDialog1.Execute then
  begin
    AssignFile(fi, OpenDialog1.FileName);
    Reset(fi, 1);
    n := FileSize(fi);
    FillChar(arr, SizeOf(arr), $00);
        FillChar(arr, SizeOf(arr), $FF);
            FillChar(arr, SizeOf(arr), $00);
                FillChar(arr, SizeOf(arr), $F0);
                    FillChar(arr, SizeOf(arr), $0F);
                        FillChar(arr, SizeOf(arr), $00);


    for i := 1 to n div Buffer do
    begin
      BlockWrite(fi, arr, n mod Buffer);
    end;
    CloseFile(fi);
    Erase(fi);
  end;
end;
So richtig?

Meflin 3. Jul 2004 15:13

Re: SchredderProg (mit source) gesucht!
 
3x ;-)

Luckie 3. Jul 2004 15:20

Re: SchredderProg (mit source) gesucht!
 
Zitat:

Zitat von HW764
So richtig?

Nein, welchen Wert hat jetzt wohl arr in der Schleife?

HW764 3. Jul 2004 15:21

Re: SchredderProg (mit source) gesucht!
 
Delphi-Quellcode:
procedure TForm1.SpeedButton1Click(Sender: TObject);
const Buffer = 1024;
var
  arr: array [1..Buffer] of byte;
  fi: file;
  i, n: integer;
begin
  if OpenDialog1.Execute then
  begin
    AssignFile(fi, OpenDialog1.FileName);
    Reset(fi, 1);
    n := FileSize(fi);
FillChar(arr, SizeOf(arr), #0);
    FillChar(arr, SizeOf(arr), $00);
        FillChar(arr, SizeOf(arr), $FF);
            FillChar(arr, SizeOf(arr), $00);
                FillChar(arr, SizeOf(arr), $F0);
                    FillChar(arr, SizeOf(arr), $0F);
                        FillChar(arr, SizeOf(arr), $00);


    for i := 1 to n div Buffer do
    begin
      BlockWrite(fi, arr, n mod Buffer);
    end;
    CloseFile(fi);
    Erase(fi);
  end;
end;

Soooo??? *liebschau*
Und was passiert, wenn ichs so schreibe?

Delphi-Quellcode:
procedure TForm1.SpeedButton1Click(Sender: TObject);
const Buffer = 1024;
var
  arr: array [1..Buffer] of byte;
  fi: file;
  i, n: integer;
begin
  if OpenDialog1.Execute then
  begin
    AssignFile(fi, OpenDialog1.FileName);
    Reset(fi, 1);
    n := FileSize(fi);
FillChar(arr, SizeOf(arr), #0);
    FillChar(arr, SizeOf(arr), $00);
        FillChar(arr, SizeOf(arr), $FF);
            FillChar(arr, SizeOf(arr), $00);
                FillChar(arr, SizeOf(arr), $F0);
                    FillChar(arr, SizeOf(arr), $0F);
                        FillChar(arr, SizeOf(arr), $00);
FillChar(arr, SizeOf(arr), #0);
    FillChar(arr, SizeOf(arr), $00);
        FillChar(arr, SizeOf(arr), $FF);
            FillChar(arr, SizeOf(arr), $00);
                FillChar(arr, SizeOf(arr), $F0);
                    FillChar(arr, SizeOf(arr), $0F);
                        FillChar(arr, SizeOf(arr), $00);
FillChar(arr, SizeOf(arr), #0);
    FillChar(arr, SizeOf(arr), $00);
        FillChar(arr, SizeOf(arr), $FF);
            FillChar(arr, SizeOf(arr), $00);
                FillChar(arr, SizeOf(arr), $F0);
                    FillChar(arr, SizeOf(arr), $0F);
                        FillChar(arr, SizeOf(arr), $00);


    for i := 1 to n div Buffer do
    begin
      BlockWrite(fi, arr, n mod Buffer);
    end;
    CloseFile(fi);
    Erase(fi);
  end;
end;
Wirds dann noch mehrmal überschrieben?

MrKnogge 3. Jul 2004 15:33

Re: SchredderProg (mit source) gesucht!
 
Es mag sein, dass ich mir irre, aber ich glaub du füllst den Speicherplatz nie mit einem anderen Zeichen als $00 .

Meflin 3. Jul 2004 15:34

Re: SchredderProg (mit source) gesucht!
 
du irrst dich nicht...


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:52 Uhr.
Seite 3 von 5     123 45      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz