Как установить блокировку только для чтения на файл в Windows с помощью C - PullRequest
0 голосов
/ 04 апреля 2011

Мне нужно создать блокировку только для чтения для определенного файла в Windows, в C. Функция lockf совершенно бесполезна, так как она создает эксклюзивную блокировку. Мне нужно защитить файл от записи, но несколько процессов должны иметь возможность читать его одновременно.

Я не могу использовать библиотеки CygWin или MINGW, я ограничен API-интерфейсами Microsoft, которые, похоже, не имеют приличного fcntl. Или я что-то упустил?

Ответы [ 2 ]

3 голосов
/ 04 апреля 2011

если вы имеете в виду временный период, тогда используйте CreateFile () с dwShareMode = FILE_SHARE_READ, иначе используйте SetFileAttributes ()

0 голосов
/ 04 апреля 2011

Если вы хотите заблокировать часть файла, используйте LockFileEx .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...