нужна прога которая бинарный файл преобразует в 10 или 16 формат. Приблизительно повыдирал из других программ, но что то не работает... подскажите что не правильно. Код (Text): format PE GUI 4.0 entry WINMAIN include '%fasminc%\win32a.inc' null equ ebx section '.data' data readable writeable fin db 'f1.txt',0 fout db 'f2.txt',0 zg db "Âû÷èñëåíèå:",0 form dd " %u ",0 buf1 db 21 dup(0) hFile dd ? lFile dd ? inbuf dd ? hFileO dd ? szFileWritten dd ? szReadByte dd ? section '.code' code readable executable proc WINMAIN uses ebx esi xor ebx, ebx invoke CreateFile,\ fin,\ GENERIC_READ,\ null,\ null,\ OPEN_EXISTING,\ FILE_ATTRIBUTE_ARCHIVE,\ null mov [hFile],eax invoke GetFileSize,[hFile],null mov [lFile],eax invoke CreateFile,\ fout,\ GENERIC_READ or GENERIC_WRITE,\ FILE_SHARE_READ or FILE_SHARE_WRITE,\ null,\ CREATE_NEW,\ FILE_ATTRIBUTE_ARCHIVE,\ null mov [hFileO],eax mov esi,[lFile] @loop: invoke ReadFile,[hFile],inbuf,1,szReadByte,null invoke wsprintf,buf1,form,inbuf ;здесь должно приобразовать в числа, но не получается ;invoke MessageBox,0,buf1,zg,MB_OK invoke WriteFile,[hFileO],buf1,1,szFileWritten,null dec esi jnz @loop invoke CloseHandle,[hFile] invoke CloseHandle,[hFileO] pop esi pop ebx invoke ExitProcess, null endp section '.idata' import data readable writeable library kernel32,'KERNEL32.DLL',\ user32,'USER32.DLL' include '%fasminc%/api/kernel32.inc' include '%fasminc%/api/user32.inc'
131s > invoke WriteFile,[hFileO],buf1,1,szFileWritten,null Вместо единицы должна быть длина записываемой строки.