![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Всем привет [D5]
Yu © (2002-03-28 10:30:00)Как снять к-н атрибут с файла? например - ReadOnly?
Anatoly Podgoretsky (2002-03-28 21:50:00) [1]I/O © (28.03.02 21:34)
Раньще ты делал неправильно!
FileSetAttr(filelistbox1.FileName, FileGetAttr(filelistbox1.FileName) and not faHidden );
I/O (2002-03-28 21:40:00) [2]faVolumeID - Идентификатор тома
I/O (2002-03-28 21:34:00) [3]Это где-то я видел:
At: Integer;
begin
At:= FileGetAttr(filelistbox1.FileName);
if At and faHidden <> 0 then
FileSetAttr( filelistbox1.FileName, At - faHidden);
end;
А раньше я делал так:
FileSetAttr(filelistbox1.FileName, faHidden-faHidden );
PVOzerski (2002-03-28 11:13:00) [4]>Посмотри WinAPI-функции SetFileAttributes и GetFileAttributes.
>Ну есть же функция
> FileSetAttr(const FileName: string; Attr: Integer): Integer;
А это, по сути дела, без разницы, какой вариант использовать.
Внутренняя реализация:
function FileGetAttr(const FileName: string): Integer;
begin
Result := GetFileAttributes(PChar(FileName));
end;
>FileSetAttr устанавливает атрибуты, а нужно СНЯТЬ
Получаешь старое значение атрибутов, убираешь из него ненужный и устанавливаешь то, что осталось.
Способ "уборки" должен сработать такой:
if Attr and faReadOnly=faReadOnly then
dec(Attr,faReadOnly);
Yu (2002-03-28 10:51:00) [5]FileSetAttr устанавливает атрибуты, а нужно СНЯТЬ. Кстати, а что за атрибут VolumeID, не в курсе?
Dok_3D (2002-03-28 10:46:00) [6]Ну есть же функция
FileSetAttr(const FileName: string; Attr: Integer): Integer;
В хелпе даже пример для нее есть.
От нее и пляши ...
PVOzerski (2002-03-28 10:43:00) [7]Посмотри WinAPI-функции SetFileAttributes и GetFileAttributes.