Не удаётся открыть файл на чтение атрибутов

Тема в разделе "WASM.BEGINNERS", создана пользователем assch, 10 мар 2012.

  1. assch

    assch Member

    Публикаций:
    0
    Регистрация:
    17 мар 2011
    Сообщения:
    203
    В статье "3 метода работы с занятыми файлами" в одном из методов "Чтение файла с помощью прямого доступа к диску"
    было сказоно что:
    Таким способом можно читать только файлы которые можно открыть с доступом "FILE_READ_ATTRIBUTES" (не читаются только файлы подкачки)
    У меня недавно стояла 32 битная XP и этот способ:

    Код (Text):
    1. invoke CreateFile,addr Путь к файлу,FILE_READ_ATTRIBUTES,FILE_SHARE_READ or FILE_SHARE_WRITE or FILE_SHARE_DELETE,0,OPEN_EXISTING,0,0
    Прекрасно открывал хендл файла на чтение атрибутов.

    Но когда я обновил компьютер и поставил себе для тестов 4 системы.
    XP 32
    XP 64
    Семёрка 32
    Семёрка 64
    То обнаружил что на трёх последних системах этот способ работает не всегда.
    Глубоко я не копал меня интересовали только файлы реестра.
    Так вот при попытке открыть эти файлы на чтение атрибутов функция "GetLastError" выдала что "системе не удалось обнаружить этот файл"
    Интересно что когда я ради интереса в этой же папке "C:\WINDOWS\system32\config" создал простой текстовый файл с которым можно было делать
    всё что угодно (копировать,удалять,редактировать) я попробывал с помощью этой же конструкции функции "CreateFile" открыть этот текстовый файл
    на чтение атрибутов был тот же результат "системе не удалось обнаружить этот файл"
    Интересно что по адресу "C:\WINDOWS\system32" можно спокойно открывать файлы на чтение атрибутов.
    Я сначала подумал что Винды оберегают так папку "config" но когда я в папке "C:\WINDOWS\system32" просто создал "Новую папку" и поместил туда
    этот текстовый файл и попытался уже от туда открыть этот файл на чтение атрибутов у меня так же не чего не получилось.

    Вместо "FILE_READ_ATTRIBUTES" я ставил "FILE_READ_EA" и "FILE_ALL_ACCESS" всё равно результат тот же

    Кто нибудь знаком с этой проблемой?
     
  2. paralvic

    paralvic Пархоменко Александр Викторович

    Публикаций:
    0
    Регистрация:
    20 ноя 2010
    Сообщения:
    294
    Адрес:
    Нижний Новгород
  3. AsmGuru62

    AsmGuru62 Member

    Публикаций:
    0
    Регистрация:
    12 сен 2002
    Сообщения:
    689
    Адрес:
    Toronto