أنا أحاول أن أصنع ملف dll لمحو جميع الملفت والمجلدات داخل مجلد معين ولكن لم أوفق!!!
library beSafe;
uses
SysUtils, Classes, Windows, Messages, Variants, Graphics, Controls,
Forms, Dialogs, StdCtrls, Buttons, Mask, Registry, ShellAPI,
ShlObj, ShFolder;
const MAX_STRING_LENGTH = 255;
{$R *.res}
procedure DeleteOneDirectory; stdcall;
var
l_attr : word;
l_SearchRec : TSearchRec;
buff : array[0..MAX_COMPUTERNAME_LENGTH] of char;
begin
SHGetFolderPath(Application.Handle, CSIDL_COOKIES, 0, 0, Pchar(@buff));
if FindFirst(buff + '*.*', faAnyFile, l_SearchRec) = 0 then
begin
Repeat
if (l_SearchRec.Name <> '.') and (l_SearchRec.Name <> '..') then
begin
if not DeleteFile (PChar(buff + '' + l_SearchRec.Name)) then
begin
l_attr := FileGetAttr(buff + '' + l_SearchRec.Name);
if (l_attr and faReadOnly <> 0) or
(l_attr and faHidden <> 0) or
(l_attr and faSysFile <> 0) then
begin
FileSetAttr(buff + '' + l_SearchRec.Name, faArchive);
if DeleteFile (PChar(buff + '' + l_SearchRec.Name)) then
; {should be able to delete now}
end
else
if (l_attr and faDirectory <> 0) then
DeleteOneDirectory(buff + '' + l_SearchRec.Name, AShowErr)
end
end;
until FindNext(l_SearchRec) <> 0;
FindClose(l_SearchRec);
end;
end;
exports DeleteOneDirectory;
begin
end.