Entwickler-Ecke

Internet / Netzwerk - Vor dem downloaden einer Datei nach Viren prüfen?


jackie05 - Mi 02.04.08 06:23
Titel: Vor dem downloaden einer Datei nach Viren prüfen?
Hallo,
ich habe ein Programm geschrieben wo man Dateien downloaden kann und möchte vor dem downloaden der Datei nach Viren prüfen lassen mit meinem Programm.

Hier mal ein teil von meinem Code:

Delphi-Quelltext
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:
var
  Form2: TForm2;
  datei: string;
  URL,URL2: string;
  fs: TFileStream;
  filename: string;

implementation

uses Unit4;

{$R *.dfm}

procedure TForm2.IdHTTP1Work(ASender: TObject; AWorkMode: TWorkMode;
  AWorkCount: Integer);
begin
  Gauge1.Progress := AWorkCount;
  Application.ProcessMessages;
end;

procedure TForm2.IdHTTP1WorkBegin(ASender: TObject; AWorkMode: TWorkMode;
  AWorkCountMax: Integer);
begin
  Gauge1.MaxValue := AWorkCountMax;
end;

procedure TForm2.Timer1Timer(Sender: TObject);
begin
  try
    fs := TFileStream.Create(filename, fmCreate);
    IdHTTP1.Get(URL, fs);
    Timer1.Enabled := false;
    Application.MessageBox('Der Download ist abgeschlossen.''Hinweis!', MB_OK);
    Button2.Caption := 'OK';
    Button1.Enabled := true;
    Button2.Enabled := true;
    fs.Free;
  except
    Timer1.Enabled := false;
    Application.MessageBox('Die Datei konnte nicht heruntergeladen werden!''Fehler!', MB_OK);
    Button2.Caption := 'OK';
    Button1.Enabled := true;
    Button2.Enabled := true;
  end;
end;


Das ist jetzt nur der Code um Dateien herunterzuladen aber wie kann ich vor dem herunterladen erst die Datei nach Viren prüfen lassen?

Ich bedanke mich schonmal im Voraus.

MfG


mkinzler - Mi 02.04.08 07:47

Vor dem Download wird das nicht gehen:
-in Temporäres Verzeichnis herunterladen
-Scannen
-in Zielverzeichnis verschieben


jackie05 - Mi 02.04.08 08:58

Danke.
Aber das problem ist, wie Scanne ich eine Datei nach Viren unter Delphi 7?
Ich glaube nicht dass das so einfach gehen würde, mit dem Scannen unter Delphi 7.

Danke schonmal.

MfG


Xentar - Mi 02.04.08 09:04

user profile iconjackie05 hat folgendes geschrieben:
Danke.
Aber das problem ist, wie Scanne ich eine Datei nach Viren unter Delphi 7?
Ich glaube nicht dass das so einfach gehen würde, mit dem Scannen unter Delphi 7.

Danke schonmal.

MfG


Ich versteh die Frage nicht..
Es gibt keine Prozedur "ScanForVirus" oder so ähnlich..

Du könntest dir einen eigenen Virenscanner schreiben.. würde ich aber von abraten, weil schwer und viel Aufwand ;)

Btw: Jeder "normale" Virenscanner scannt eine Datei automatisch beim Schreib / Lesezugriff, also brauchst du dich darum garnicht kümmern.


Gausi - Mi 02.04.08 09:06

Tja, da brauchst du wohl die Signaturen der Viren, Trojaner und Würmer, und die müssen täglich aktualisiert werden ;-).


mkinzler - Mi 02.04.08 09:20

Du könntest ClamAV nach Delphi übersetzen :mrgreen:


AXMD - Mi 02.04.08 12:34

Du kannst alternativ den Anwender einstellen lassen, wo sich die ausführbare Datei seines Virenscanners befindet, und welche Parameter diese benötigt. Im einfachsten Fall ist das nur der Dateiname des zu scannenden Objekts (also in deinem Fall der Datei), es kann aber auch komplizierter werden. Das wäre eine Möglichkeit - ob es dir den Aufwand wert ist, musst du wissen.

AXMD


jackie05 - Do 03.04.08 00:49

Vielen Dank für die antworten.

Ich denke mal, das ich das besser so lassen werde, dazu fehlen mir die kenntnisse einen Virenscanner zu Coden.

MfG