Pull to refresh

Патчим современное приложение для работы под Windows 2000

Reading time 1 min
Views 26K
Если вы думаете, что Windows 2000 умерла, это далеко не так, она прекрасно трудится на старом железе, пусть без патчей безопасности, но в домашней интрасети это простительно. Устаревшая система на устаревшем Pentium-4 что может быть прекрасней? Да и ностальгические чувства зачастую требуют вернуться к старому интерфейсу, чтобы ощутить себя на полтора десятка лет моложе.

Конечно, OS/2 смотрелась бы еще лучше, но c ней большие проблемы с современным софтом. На Windows 2000 проблем тоже хватает. Например, утилита по восстановлению удаленных файлов отказалась работать. Выдает якобы, что исполняемый файл не является приложением Win32. На Windows 7 при этом работает прекрасно.



Чтож, посмотрим что случилось с PE-заголовком exe-файла. На первый взгляд ничего подозрительного. Но после детального анализа и сличения документации, выясняется, что слишком большие цифры в параметрах OS Version 5.01 и Subsystem Version 5.01 являются непреодолимым препятствием для запуска нашего файла под Windows 2000.



Исправим на OS Version 1.00 и Subsystem Version 3.10, контрольную сумму установим равную нулю, пропатчим файл.



После этого Windows 2000 начинает запускать файл, проблемы решены.

В заключение приведу побайтовое сравнение внесенных изменений:

Сравнение файлов repair1.exe и REPAIR2.EXE
00000138: 05 01
0000013A: 01 00
00000140: 05 03
00000142: 01 0A
00000150: F0 00
00000151: 38 00
00000152: 0D 00
Tags:
Hubs:
+32
Comments 13
Comments Comments 13

Articles