Как получить список файлов в одну длинную строку через какой нибудь разделитель? Так чтобы в мессаджбокс отображалось сразу содержимое папки в строке, а не кликать для просмотра результата...
можно вывести сразу в листбокс список файлов, и код писать не надо, и разделены все файлы построчно, смотреть удобно, никаких разделителей не надо.
FindFirstFileA/FindNextFileA. Слепливаешь это все в одну строку при помощи lstrcatA, используя разделитель в 1 байт - 10d (это сделает в твоём MessageBox имя каждого найденного файла в отдельной строке).
Greedy_Fly А чтобы облегчить подсказку cresta подсказываю дальше -- урок Iczelion'a номер 31. Контрол ListView -- там и описание, и исходный текст и сам экзешник
Вот написал тебе на скорую руку через MessageBox. Извращение короче P.S. Я там чуток тупонул, не через lstrcatA, а через movsb, ибо там будет проблема с разделителем. P.P.S. Что бы в одну строку всё шпарило, я тебе в коде отметил комментарием, где нужно изменить. Код (Text): .386 .model flat, stdcall option casemap:none includelib \masm32\lib\kernel32.lib includelib \masm32\lib\user32.lib include \masm32\include\kernel32.inc include \masm32\include\windows.inc include \masm32\include\user32.inc .data sFile WIN32_FIND_DATA <> sHandle dd 0 sMask db '*.*',0 mCaption db 'Find files:',0 mText db 1000h dup(0) .code Main: mov edi,offset mText push offset sFile push offset sMask call FindFirstFileA inc eax test eax,eax jz ShowResult dec eax mov sHandle,eax jmp m1 sNext: push offset sFile push sHandle call FindNextFileA test eax,eax jz ShowResult m1: mov esi,offset sFile.cFileName push offset sFile.cFileName call lstrlenA mov ecx,eax rep movsb mov byte ptr [edi],10d ; разделитель. Замени 10d на другой, тогда будет в одну строку всё. inc edi jmp sNext ShowResult: push 0 push offset mCaption push offset mText push 0 call MessageBoxA push 0 call ExitProcess end Main
0xJace Огромное спасибо...) то что нужно!!! а как через lstrcat сделать? совсем в асме пока что не шарю..
А что мешает сесть и почитать? lstrcat - что же может быть проще? Если ты совсем нуб, то так и скажи: сделайте все за меня. А то начинается: помогите, мне совсем чуть-чуть... а еще вот тут немножко... ну и тут... а теперь тут. Ну и последние две странички кода сделайте...