Запись в файл - ошибка

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

  1. DPX

    DPX New Member

    Публикаций:
    0
    Регистрация:
    13 фев 2005
    Сообщения:
    47
    Адрес:
    Russia
    Здравствуйте!

    Почему не работает следующий код:
    Код (Text):
    1.                 invoke FindResource,hInstance,SAMP_RES,RT_RCDATA
    2.                 mov hResInfo,eax
    3.                 invoke SizeofResource,hInstance,hResInfo
    4.                 mov hResSize,eax
    5.                 invoke LoadResource,hInstance,hResInfo
    6.                 mov hResData,eax
    7.                 invoke LockResource,hResData
    8.                 mov lpEntryPoint,eax
    9.                 invoke CreateFile,addr szFileName,GENERIC_WRITE,NULL,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL ,NULL
    10.                 invoke WriteFile,eax,lpEntryPoint,hResSize,NULL,NULL




    szFileName db "e:\sampfile.dat",0



    на WriteFile вылетает с ошибкой, где можно оправить отчёт microsoft. Посмотрел в дебаггере, вылетает на инструкции mov dword ptr [ebx], C00h (это длина hResSize) (ebx=0). Что делать?
     
  2. Ms Rem

    Ms Rem New Member

    Публикаций:
    0
    Регистрация:
    17 апр 2005
    Сообщения:
    1.057
    Адрес:
    С планеты "Земля"
    WriteFile обязательно требует, чтобы параметр lpNumberOfBytesWritten указывал на доступный на запись адрес, NULL тут недопустим.
     
  3. DPX

    DPX New Member

    Публикаций:
    0
    Регистрация:
    13 фев 2005
    Сообщения:
    47
    Адрес:
    Russia
    Спасибо! Теперь заработало.