Dateiattribute setzen (aus der D3 Onlinehilfe)
Delphi ermöglicht es Ihnen, die Attribute jeder beliebigen Datei zu jedem beliebigen Zeitpunkt zu setzen.
Um die Attribute einer Datei zu setzen,
Übergeben Sie den Dateinamen und die gewünschten Attribute an die Prozedur FileSetAttr..
Beispiel
Der folgende Quelltext liest die Attribute einer Datei in eine Mengenvariable aus, setzt die Markierungsfelder des Dialogfelds Dateiattribute so, daß sie die aktuellen Attribute anzeigen, und führt das Dialogfeld dann aus. Ändert und übernimmt der Anwender Einstellungen des Dialogfelds, setzt der Quelltext die Dateiattribute so, daß sie den geänderten Einstellungen entsprechen:
[code lang=”delphi”]procedure TFMForm.Properties1Click(Sender: TObject);
var
Attributes, NewAttributes: Word;
begin
with FileAttrForm do
begin
FileDirName.Caption := FileList.Items[FileList.ItemIndex]; { Fenstertitel setzen }
FilePathName.Caption := FileList.Directory; { Verzeichnisnamen anzeigen }
ChangeDate.Caption := DateTimeToStr(FileDateTime(FileList.FileName));
Attributes := FileGetAttr(FileDirName.Caption); { Dateiattribute auslesen }
ReadOnly.Checked := (Attributes and faReadOnly) = faReadOnly;
Archive.Checked := (Attributes and faArchive) = faArchive;
System.Checked := (Attributes and faSysFile) = faSysFile;
Hidden.Checked := (Attributes and faHidden) = faHidden;
if ShowModal <> then { Dialogfeld ausführen }
begin
NewAttributes := Attributes; { mit den ursprünglichen Attributen beginnen }
if ReadOnly.Checked then NewAttributes := NewAttributes or faReadOnly
else NewAttributes := NewAttributes and not faReadOnly;
if Archive.Checked then NewAttributes := NewAttributes or faArchive
else NewAttributes := NewAttributes and not faArchive;
if System.Checked then NewAttributes := NewAttributes or faSysFile
else NewAttributes := NewAttributes and not faSysFile;
if Hidden.Checked then NewAttributes := NewAttributes or faHidden
else NewAttributes := NewAttributes and not faHidden;
if NewAttributes <> Attributes then { hat sich etwas geändert… }
FileSetAttr(FileDirName.Caption, NewAttributes); { …die neuen Werte schreiben }
end;
end;
end;
[/code]
[tags]Delphi, File[/tags]
0 Kommentare zu “Setting File Attributes (german)”