type TFileAttributes = set of
(ReadOnly,
Hidden,
SysFile,
VolumeId,
Directory,
Archive,
AnyFile);
//
function GetFileAttributes(const FileName: String): TFileAttributes;var srec:
TSearchRec;
begin result:=[];
if FindFirst(FileName, faAnyFile, srec) = 0 then
begin
try
if (srec.Attr and faReadOnly)>0 then
result:=result+[ReadOnly]; //Schreibgesch. Datei
if (srec.Attr and faHidden)>0 then
result:=result+[Hidden]; //Verborgene Datei
if (srec.Attr and faSysFile)>0 then
result:=result+[SysFile]; //Systemdatei
if (srec.Attr and faVolumeId)>0 then
result:=result+[VolumeId]; //Laufwerks-ID
if (srec.Attr and faDirectory)>0 then
result:=result+[Directory]; //Verzeichnis
if (srec.Attr and faArchive)>0 then
result:=result+[Archive]; //Archivdatei
if (srec.Attr and faAnyFile)>0 then
result:=result+[AnyFile]; //Beliebige Datei
finally
FindClose(srec);
end;
end;
end;
Beispiel :
procedure TForm1.Button1Click(Sender: TObject);
var fa: TFileAttributes;
begin
fa := GetFileAttributes('C:\any file');
if readonly in fa then
ShowMessage('Datei ist schreibgeschützt')
else
ShowMessage('Datei ist NICHT schreibgeschützt');
end;
Keine Kommentare:
Kommentar veröffentlichen