|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Поиск в ехе-абракадабре
Всем привет.
если просматривать любой ехе-файл (или любого другого типа) блокнотом , то видно, что в нем есть некоторые вполне читаемые слова. Как можно быстро считать файл и проверить, есть ли нужная строка, видимая в блокноте, в ехе-файле? могу считывать ехе-файл по байту, добавлять каждый байт(символ) в строку и сравнивать, но это долго, особенно если нужно искать среди большого количества файлов спасибо за ответ |
#2
|
||||
|
||||
Это не совсем тривиальная задача, т.к. есть разные типы строк (анси, юникод, паскалевский тип и т.п.).
|
#3
|
||||
|
||||
Напиши на АСМе
Когда ты сравниваешь две строки, все равно у тебя сравниваются посимвольно. Поэтому иного способа просто нет. Если хочешь ускорить - напиши на встроенной асме. Ну и конечно желательно грузить ток 1й символ, и сравнивать его, и если он равен - тогда начинать работать с остальными. Еще для ускорения можно копировать весь файл в оперативку одним блоком. Или по частям. Побайтово просмотреть пару мегов оперативы быстрее, чем пару мегов файла с диска. jmp $ ; Happy End! The Cake Is A Lie. |