only Code (Text): include 'win32ax.inc' .code start: sub esp,1024 mov ebp,esp invoke wsprintf,ebp,"1\n2" invoke MessageBox,HWND_DESKTOP,ebp,"...",MB_OK invoke ExitProcess,0 .end start Выводит "1\n2". "C Language Reference C Character Constants" Вам буква "C" о чем нибудь говорит? При чем тут АПИ?!
в общем проблема такова: я записал имя апишки, далее я вычислил конец апи в буфере и нашел CRC, далее я пытаюсь записать CRC в буффер, но при: zsFormatCRC db 'CRC: %x',0xD,0xA в файле потом отображается следующее: CRC: и квадратики.Так же пробовал просто записывать [CRC] в хвост апи в буфере т.е с помощью Lodsb,тагда в хекосе все как бю правильно. т.е в шестнадцетеричном виде все нормал, а в обычном виде тоже кракозябры. Что посоветуете ? как правильно хекос записать в файл 4 байта чтобы они именно так отображались в файле ?
n1kt0 Покажи кусок программы, а то чудеса какие-то рассказываешь ) и строку формата тоже нужно нулём завершать
да кусок показать не могу, но выглядит примерно так, как ты описал:\ .data zsFormatCRC db 'CRC: %x',0xD,0xA,0 zsFormatAPI db 'API: %s',0x20,0 CRC dd ? apiname buffer db 64 dup (?) .code ... ... ;CRC мы получули, apiname тоже,записали apiname в общий буфер и собственно теперь формируем ;строку CRC, чтобы потом записать ее в хвост apiname в общем буфере: wsprintf,buffer,zsFormatCRC,CRC ;в buffer позиция хвоста записанной apiname потом записываем буфер в файл и созерцаем то, о чем я говорил
Code (Text): .data fileName db 'test.txt', 0 szFormat db 'API: %s', 9, 'CRC: 0x%x', 13, 10, 0 apiName db 'MessageBox', 0 CRC dd 12345h .data? h_File dd ? size_File dd ? szRezult db 1024 dup (?) ; Строка с результатами .code start: invoke CreateFile, addr fileName, GENERIC_WRITE, 0, 0, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0 mov [h_File], eax mov edi, 5 @@: invoke wsprintf, addr szRezult, addr szFormat, addr apiName, [CRC] invoke WriteFile, [h_File], offset szRezult, eax, addr size_File, 0 sub edi, 1 jnz @B invoke CloseHandle, [h_File] invoke ExitProcess, NULL end start
n1kt0 поправь чтобы было как у меня - только не нужно включать весь чужой пост в ответы тут за это банят.