Консультация № 177588
01.04.2010, 03:31
0.00 руб.
0 2 1
Добрый вечер Уважаемые эксперты.
Пожалуйста, помогите с проблемой.
Она заключается в следующем, у меня есть два бинарных файла, открываю их через шестнадцатеричные редакторы.
Один из этих файлов(оригинальный) установлен игрой, а другой модифицированный(скачан с Интернета). Естественно они очень очень похожи, но в модифицированном автор несколько моментов изменил с помощью шестнадцатеричного редактора. И вот, файл большой и на глаз очень тяжело определить, где он и что на что изменил.
С помощью одной их программ для сравнения текстовых файлов пытался их сравнить но ничего не получилось, она не поддерживает бинарные файлы. Вместо текста был один символ(непонятный).
Так вот, с помощью чего можно сравнить бинарные файлы и выяснить где были изменения?

Обсуждение

Неизвестный
01.04.2010, 09:26
общий
это ответ
Здравствуйте, Dimon4ik.

Я обычно использую стандартную утилиту командной строки FC с ключом /B - сравнение бинарных файлов.
Синтаксис такой: FC /B "Имя первого файла" "Имя второго файла"
В результате получаю листинг в виде (в него попадают только различающиеся участки файлов):
<Адрес1> <Зачение из первого файла> <Значение из второго файла>
<Адрес2> <Зачение из первого файла> <Значение из второго файла>
...
<АдресN> <Зачение из первого файла> <Значение из второго файла>

Если листинг получается большой - перенаправляю его в файл: FC /B "Имя первого файла" "Имя второго файла" >list.txt В результате листинг попадет в файл list.txt. А дальше уже смотрю в редакторе по конкретным адресам более подробно.
Эта же утилита позволяет (причем довольно грамотно) сравнивать и текстовые файлы. Справку по ключам смотри по FC /?.

С уважением, Дмитрий
5
Это то что нужно! Большое спасибо, все очень хорошо работает! <br>Очень полезная утилита, спасибо также за то, что объяснили как сохранить в файл.
Неизвестный
01.04.2010, 12:06
общий
Dimon4ik:
Вообще во многих HEX редакторах есть такая функция, например - недавно ставший популярным 010 Editor v3.
Лично я, для сравнения файлов пользуюсь TotalCommander'ом. Есть все необходимое.
Форма ответа