Как работает MapViewOfFile ?

Тема в разделе "WASM.BEGINNERS", создана пользователем Topor, 9 дек 2005.

  1. Topor

    Topor New Member

    Публикаций:
    0
    Регистрация:
    21 ноя 2005
    Сообщения:
    31
    Товарищи !

    Если файл спроецирован в память с помощью MapViewOfFile,

    то при изменениях в файле, будут ли автоматически происходить изменения в памяти ?

    Извините за тупизм.
     
  2. mix_mix

    mix_mix Михаил

    Публикаций:
    0
    Регистрация:
    8 окт 2005
    Сообщения:
    277
    Адрес:
    Токио
    Логичней было бы задать такой вопрос:

    Если файл спроецирован в память с помощью MapViewOfFile,

    то при изменениях в памяти, будут ли автоматически происходить изменения в файле ?

    Ответ:

    Только если файл был открыт с атрибутоми GENERIC_WRITE в CreateFile, PAGE_READWRITE в CreateFileMapping и FILE_MAP_WRITE в MapViewOfFile (на чтение/запись), и только при последующим вызове UnmapViewOfFile.
     
  3. Topor

    Topor New Member

    Публикаций:
    0
    Регистрация:
    21 ноя 2005
    Сообщения:
    31
    Меня именно это интересует: Файл уже спроецирован в память,и мы в него что-то пишем, а изменения в памяти САМИ будут появляться ? Никак не догоню. Или чтобы изменения

    в памяти произошли надо опять вызвать MapViewOfFile ?
     
  4. mix_mix

    mix_mix Михаил

    Публикаций:
    0
    Регистрация:
    8 окт 2005
    Сообщения:
    277
    Адрес:
    Токио
    Скорее всего нет, т.к. при обычной записи файл не загружается в память, следовательно CreateFile никак не может перекликаться с MapViewOfFile.
     
  5. Topor

    Topor New Member

    Публикаций:
    0
    Регистрация:
    21 ноя 2005
    Сообщения:
    31
    Ладно. Фкурил. Спасибо.