FileMapping нужна помощь

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

  1. Valentin

    Valentin Member

    Публикаций:
    0
    Регистрация:
    2 ноя 2007
    Сообщения:
    128
    Спроецировал файл в память:
    ---------------------------------------------------------
    FileMap proc
    LOCAL ln :lol: WORD
    LOCAL br :lol: WORD

    mov ofn.lStructSize,SIZEOF ofn
    push hWnd
    pop ofn.hWndOwner
    push hInstance
    pop ofn.hInstance
    mov ofn.lpstrFilter, OFFSET szFilterTxt
    mov ofn.lpstrFile, OFFSET buffMap
    mov ofn.nMaxFile,MAXSIZE
    mov ofn.Flags, OFN_FILEMUSTEXIST or \
    OFN_PATHMUSTEXIST or OFN_LONGNAMES or\
    OFN_EXPLORER or OFN_HIDEREADONLY
    invoke GetOpenFileName, ADDR ofn
    .if eax==TRUE
    invoke CreateFile,ADDR buffMap,\
    GENERIC_READ ,\
    0,\
    NULL,OPEN_EXISTING,FILE_ATTRIBUTE_ARCHIVE,\
    NULL
    mov hFileRead,eax
    invoke CreateFileMapping,hFileRead,NULL,PAGE_READONLY,0,0,NULL
    mov hMapFile,eax

    invoke MapViewOfFile,hMapFile,FILE_MAP_READ,0,0,0
    mov pMemory,eax
    invoke GetFileSize,hFileRead,NULL
    mov ln, eax

    ;-----:?????????????????????????????????

    invoke UnmapViewOfFile,pMemory
    call CloseMapFile
    .endif


    FileMap endp

    CloseMapFile PROC
    invoke CloseHandle,hMapFile
    mov hMapFile,0
    invoke CloseHandle,hFileRead
    ret
    CloseMapFile endp
    -----------------------------------------------------------
    Файл текстовый.
    Как теперь загнать данные из файла в буфер для дальнейшей обработки текста ??
     
  2. GoldFinch

    GoldFinch New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2008
    Сообщения:
    1.775
    pMemory и есть буфер...
    алсо после CreateFileMapping можно выполнить CloseHandle(hFileRead)
     
  3. barton

    barton New Member

    Публикаций:
    0
    Регистрация:
    19 июл 2008
    Сообщения:
    164
    Адрес:
    Czechoslovakia
    и после MapViewOfFile можно выполнить CloseHandle(hMapFile)
     
  4. Valentin

    Valentin Member

    Публикаций:
    0
    Регистрация:
    2 ноя 2007
    Сообщения:
    128
    Спасибо, буду насиловать дальше.
     
  5. Partner

    Partner Павел

    Публикаций:
    0
    Регистрация:
    28 фев 2008
    Сообщения:
    917
    Адрес:
    Los Angeles
    Не CloseHandle, а UnmapViewOfFile