Всем привет.Тут возникла у меня запарка.Короче мне допустим надо прочитать весь файл,размер его не известен.Делаю только через апи.Получается readfile не подойдет,так как мы не знаем какой длинны должен быть буфер для чтения в него данных.Я подумал сделать через мэппинг файла в память.Вот что я получается делаю: связываюсь с файлом: Code: invoke CreateFile,addr string,GENERIC_READ, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0 mov handle,eax // маплю invoke CreateFileMapping,handle,0,PAGE_READONLY,0,0,0 mov hMapFile,eax // проецирую его весь в память invoke MapViewOfFile,hMapFile,FILE_MAP_READ,0,0,0 mov pMemory,eax а дальше мне надо каким то макаром что бы я мог сравнить строку с файлом который я проецировал,но как?извиняюсь, может тупой вопрос,но за целый день я уже не соображаю, наверное.Была идея писать его в файл и сравнивать размеры двух файлов,но имхо по моему это быдляцкий способ.
Очень даже подойдет. Создавай буфер стандартного размера 1024, циклом по 1024 его читай, когда вернет меньше 1024 - был последний кусок.