Работа с файлом

Тема в разделе "WASM.BEGINNERS", создана пользователем avatarer, 6 фев 2010.

  1. avatarer

    avatarer New Member

    Публикаций:
    0
    Регистрация:
    6 фев 2010
    Сообщения:
    5
    Непойму своей ошибки:
    Код (Text):
    1.     invoke GlobalAlloc,GMEM_MOVEABLE or GMEM_ZEROINIT,MEMSIZE
    2.     mov  hMemory,eax
    3.     invoke GlobalLock,hMemory
    4.     mov  pMemory,eax
    5.     invoke lstrcpy,addr pMemory,addr WowRealmText
    6.                             invoke CreateFile,ADDR WowRealmPatch,\
    7.                                                 GENERIC_READ or GENERIC_WRITE ,\
    8.                                                 FILE_SHARE_READ or FILE_SHARE_WRITE,\
    9.                                                 NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_ARCHIVE,\
    10.                                                 NULL
    11.                     mov hFile,eax
    12.                     invoke WriteFile,hFile,pMemory,MEMSIZE,ADDR SizeReadWrite,0
    13.                                         invoke wsprintf,addr buf,addr shab,hFile,SizeReadWrite
    14.                                             invoke MessageBox,0,addr pMemory,addr buf,0
    15.                                                                 invoke CloseHandle,hFile
    Месседж бокс всё пишет правильно, тоесть pMemory заполнено правильно.
    А проблема такая:
    Файл создаеться с 1 пробелом и все.
    Подскажите плс, что не так
     
  2. avatarer

    avatarer New Member

    Публикаций:
    0
    Регистрация:
    6 фев 2010
    Сообщения:
    5
    MEMSIZE = 65535
     
  3. max7C4

    max7C4 New Member

    Публикаций:
    0
    Регистрация:
    17 мар 2008
    Сообщения:
    1.203
    может для WriteFile тоже следует указать addr pMemory
    хотя лучше возьмите отладчик, посмотрите, что какая функция возвращает и что конкретно куда вы передаете. макросы конечно хорошо, но масмовские завороты - зло.