FILE_ATTRIBUTE: TEMPORARY, OFFLINE, COMPRESSED

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Source
Постоялец
Постоялец
 
Сообщения: 351
Зарегистрирован: 04.09.2007 (Вт) 11:21

FILE_ATTRIBUTE: TEMPORARY, OFFLINE, COMPRESSED

Сообщение Source » 29.04.2008 (Вт) 19:03

Из инета:
FILE_ATTRIBUTE_TEMPORARY Файл используется для временного сохранения. Файловые системы избегают писать данные обратно на запоминающее устройство большой емкости, если доступна достаточная кэш-память, потому что приложение часто удаляет временный файл вскоре после того, как дескриптор закрывается. В этом случае, система может полностью отменить запись данных. В противном случае, данные должны быть записаны после того, как дескриптор закроется.

А если сбой в системе, файл в кеше теряется?
Две противоречивые цитаты:
приложение часто удаляет временный файл вскоре после того, как дескриптор закрывается

данные должны быть записаны после того, как дескриптор закроется

Так каков должен быть порядок работы с tmp-файлом, чтобы не тормозило записью на диск? Установить указатель на начало файла, а потом закрыть? Имя файла сохранится...

Из инета:
FILE_ATTRIBUTE_OFFLINE Данные файла непосредственно не доступны. Этот атрибут указывает, что данные файла были физически перемещены на автономное запоминающее устройство. Этот атрибут используется Удаленным хранилищем, программным обеспечением иерархического управления памятью. Приложения не должны произвольно изменять этот атрибут.

ещё:
FILE_ATTRIBUTE_OFFLINE - указывает на то, что данные файла не доступны и находятся на отключённом устройстве

если данные файла недоступны, то как доступны его атрибуты? Тут я ничего не понимаю...

FILE_ATTRIBUTE_COMPRESSED Я думал, что если установить этот флаг через SetFileAttributes, то данные в файл будут писаться в сжатом виде, заполняя пустые места в неполных кластерах. Тестил на NTFS, кластер=4КБ. Ф-я SetFileAttributes вернула 1, но нет же, файл не пометился как сжатый, не высветился синим цветом в Explorer, Far не показал установленным атрибут компрессии...

Far также показывает атрибут Зашифрованный, читается ли такой файл Open For Binary? В справочнике по GetFileAttributes нет такого атрибута...
Буря мглою небо кроет, вихри снежные крутя, то как зверь с VB завоешь, то заплачешь, как дитя...

Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot, Yandex-бот и гости: 22

    TopList