05-01-2010, 06:42 PM
صممت برنامج للبحث عن الفيروسات ثم المطابقة مع قاعدة البيانات لكن عند الوصول للمطابقة يحدث خطا فهل من اللممكن تصحيحه
[/align][/align][/align]
ساضع البرنامج في المرفقات
PHP كود :
unit Unit1;
[]interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, sPanel, sSkinProvider, sSkinManager, ComCtrls, XPMan,
StdCtrls, sEdit, sAlphaListBox, sButton, AdvPicture, DB, DBTables, Grids,
DBGrids;
type
TForm1 = class(TForm)
sSkinManager1: TsSkinManager;
sSkinProvider1: TsSkinProvider;
sPanel1: TsPanel;
sListBox1: TsListBox;
sPanel2: TsPanel;
Edit1: TsEdit;
XPManifest1: TXPManifest;
ProgressBar1: TProgressBar;
sButton1: TsButton;
sButton2: TsButton;
sButton3: TsButton;
DataSource1: TDataSource;
Table1: TTable;
Label1: TLabel;
DBGrid1: TDBGrid;
procedure sButton1Click(Sender: TObject);
procedure RF(const folder: TFileName);
procedure sButton3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.sButton1Click(Sender: TObject);
begin
RF('C:\');//برتشن البحث
end;
procedure TForm1.RF(const folder: TFileName);
var
Sr: TSearchRec;
begin
if FindFirst(folder + '*.*', faAnyFile, Sr) = 0 then
begin
Edit1.Text:=folder;
try
repeat
if (Sr.Attr and faDirectory = 0) or( Sr.Name <> '.') and (Sr.Name <> '..') then
Begin
If Table1.Locate('Nom',Sr.Name , [locaseinsensitive,lopartialkey]) Then //تم البحث في حقل الاسماء
Deletefile(Folder+Sr.Name);//عند المطابقة مع قاعدة لبيانات يتوقف البرنامج
end;
until FindNext(Sr) <> 0;
except
FindClose(Sr);
raise;
end;
FindClose(Sr);
end;
if FindFirst(folder + '*.*', faAnyFile Or faDirectory, Sr) = 0 then
begin
try
repeat
if ((Sr.Attr and faDirectory) <> 0) and
(Sr.Name <> '.') and (Sr.Name <> '..') then
begin
RF(folder + Sr.Name + '\');
Edit1.Text:=folder;
Edit1.Refresh;
end;
until FindNext(Sr) <> 0;
except
FindClose(Sr);
raise;
end;
FindClose(Sr);
end;
end;
procedure TForm1.sButton3Click(Sender: TObject);
begin
Close; //الخروج من البرنامج
end;
end.
ساضع البرنامج في المرفقات

