Атрибут файла доступен только для чтения, если его папка доступна только для чтения, а файл - нет - PullRequest
0 голосов
/ 07 июня 2009

У кого-нибудь есть идеи? GetFileAttributes возвращает 32 (FILE_ATTRIBUTE_READONLY | FILE_ATTRIBUTE_ARCHIVE). Файл C: \ WINDOWS \ system32 \ drivers \ etc \ hosts.

Большое спасибо!

Ответы [ 3 ]

2 голосов
/ 07 июня 2009

http://msdn.microsoft.com/en-us/library/aa364944(VS.85).aspx

Взгляни на это. Ответ 32 - только FILE_ATTRIBUTE_ARCHIVE. Итак, ваш код работает нормально.

0 голосов
/ 10 июня 2009

Возвращает 33 (FILE_ATTRIBUTE_READONLY | FILE_ATTRIBUTE_ARCHIVE). Файл hosts НЕ только для чтения, но это возвращаемое значение.

0 голосов
/ 10 июня 2009

Что из перечисленного в вашей ситуации?

1) GetFileAttributes возвращает 33 (FILE_ATTRIBUTE_READONLY | FILE_ATTRIBUTE_ARCHIVE)

или

2) GetFileAttributes возвращает 32 (FILE_ATTRIBUTE_ARCHIVE)

Если файл hosts не имеет атрибута «только для чтения», а GetFileAttributes не возвращает INVALID_FILE_ATTRIBUTES, тогда вы можете доверять его возвращаемому значению. Так что если файл на самом деле не имеет атрибута «только для чтения», то у вас есть ситуация # 2 выше.

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