написал следующее: invoke CreateFile,addr BanFile,GENERIC_READ,FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE _NORMAL,NULL .if eax!=-1 mov hFile,eax invoke GetFileSize,hFile,NULL mov dword ptr [BanFileSize],eax invoke GlobalAlloc,GMEM_MOVEABLE or GMEM_ZEROINIT,[BanFileSize] mov hMem,eax invoke GlobalLock,hMem mov pMem,ax invoke ReadFile,hFile,pMem,MEMSIZE-1,NULL,NULL invoke SendMessage,hEditor,WM_SETTEXT,NULL,pMem .endif на строке: invoke ReadFile,hFile,pMem,MEMSIZE-1,addr FileSize,NULL ошибка, в отладчике: 00401392 . 6A 00 PUSH 0 00401394 . 6A 00 PUSH 0; /pOverlapped = NULL 00401396 . 68 FEFF0000 PUSH 0FFFE; |pBytesRead = 0000FFFE 0040139B . 6A 00 PUSH 0; |BytesToRead = 0 0040139D . 66:FF35 924240>PUSH WORD PTR DS:[pMem];Buffer = NULL 004013A4 . FF35 8A424000 PUSH DWORD PTR DS:[hFile];File = NULL 004013AA . E8 8B010000 CALL SDI._ReadFile@20;ReadFile я не пойму откуда 0040139B появилась!?
что-то я не пойму вот это: mov pMem,ax и почему 2 разные строки с ReadFile? invoke ReadFile,hFile,pMem,MEMSIZE-1,NULL,NULL это вообще работать не будет, последние 2 параметра не могут быть одновременно NULL'ами... а какой компилятор используешь ?