Получение аттрибутов файла-STATUS_SHARING_VIOLATION

Тема в разделе "WASM.WIN32", создана пользователем coocky, 17 сен 2008.

  1. coocky

    coocky New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2007
    Сообщения:
    195
    Привет.
    Вообщем есть занятый файл,хочу получить его аттрибуты..
    Однако при попытке открытия получаю STATUS_SHARING_VIOLATION
    Открывать пытаюсь с такими параметрами

    Код (Text):
    1. ObjectAttributes.Length = sizeof(OBJECT_ATTRIBUTES);
    2.     ObjectAttributes.RootDirectory = NULL;
    3.     ObjectAttributes.ObjectName = &NtPathU;
    4.     ObjectAttributes.Attributes = OBJ_CASE_INSENSITIVE;
    5.     ObjectAttributes.SecurityDescriptor = NULL;
    6.     ObjectAttributes.SecurityQualityOfService = NULL;
    7.  
    8. Status = ZwCreateFile (&FileHandle,
    9.         FILE_GENERIC_READ,
    10.         &ObjectAttributes,
    11.         &IoStatusBlock,
    12.         NULL,
    13.         NULL,
    14.         FILE_SHARE_READ,
    15.         FILE_OPEN,
    16.         FILE_ATTRIBUTE_NORMAL,
    17.         NULL,
    18.         0);
    Однако что експлорер,что far легко могут посмотреть атрибуты файла.Да и обычный вызов функции kernell GetFileAttributes возвращает валидное значение.
    Пытался посдмотреть файлспаем -ничего он не дает привызове этой функции или при попытке просмотреть аттрибуты файла.
    Подскажите-как нужно открыт файл
     
  2. ECk

    ECk Member

    Публикаций:
    0
    Регистрация:
    9 апр 2004
    Сообщения:
    454
    Адрес:
    Russia
    NtQueryDirectoryFile ?
     
  3. coocky

    coocky New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2007
    Сообщения:
    195
    ECk

    Возможно..
    Может проводники так и делают..
    Интересно было по самой реализации GetFileAttributes- неужели в итоге она вызывает FindFist.. FindNext..
     
  4. coocky

    coocky New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2007
    Сообщения:
    195
    Открывал через ZwQueryInformationFile
    Попробую через ZwQueryAttributesFile
     
  5. coocky

    coocky New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2007
    Сообщения:
    195
    Хм..Последняя функция вроде работает
     
  6. Partner

    Partner Павел

    Публикаций:
    0
    Регистрация:
    28 фев 2008
    Сообщения:
    917
    Адрес:
    Los Angeles
    ZwCreateFile тоже работает. DesiredAccess -> FILE_READ_ATTRIBUTES