Позволяет ли открытие файла с помощью Share-Delete другим пользователям? - PullRequest
2 голосов
/ 09 августа 2011

Перечисление FileShare предлагает различные флаги, такие как Чтение, Запись, Удалить, .... Обычно я думаю, что совместное использование файла для удаления позволяет только удаление, но не более (например, чтение).

Однако я удаленно напоминаю, что Windows различает только доступ только для чтения и полный доступ к файлам, поэтому на самом деле совместное использование для удаления также позволяет выполнять запись в файл. К сожалению, это много лет назад, и я не нашел ни первоисточника, ни какой-либо связанной информации. Есть ли надежная спецификация на фактическое поведение? Это зависит от ОС или ФС?

1 Ответ

1 голос
/ 09 августа 2011

Ознакомьтесь с документацией для CreateFile Function .

FILE_SHARE_DELETE: Включает последующие операции открытия файла или устройство для запроса на удаление доступа. В противном случае другие процессы не могут откройте файл или устройство, если они запрашивают удаление доступа. Если этот флаг не указано, но файл или устройство было открыто для удаления доступ, функция не работает. Примечание Удалить доступ позволяет как удалить, так и операции переименования.

В документации не упоминается, что доступ для чтения также разрешен.

...