Перейти к содержимому

Что нужно, чтобы портировать 16-битные приложения Windows 1.0 в современные программы для Windows...

NCommander

0:00 / 0:00

Что нужно, чтобы портировать 16-битные приложения Windows 1.0 в современные программы для Windows...

287 966 просмотров · 4 года назад
NCommander
46,8 тыс. подписчиков
287 966 просмотров · 4 года назад
Windows существует уже 36 лет, и с момента своего появления она сильно изменилась. Однако меня заинтересовал один вопрос: что нужно для переноса устаревшего приложения Windows 1.0 на современные компьютеры? В конце концов, компьютеры 1985 года были 16-битными, а современные — 64-битными. Те из нас, кто жил в 90-е, помнят, что переход на новые Windows 95 и NT 4 был очень важным событием. Мои социальные сети: Patreon:   / ncommander   Twitter:   / fossfirefighter   Discord:   / discord   Блог: https://casadevall.pro Из любопытства я решил это выяснить. Начав с примеров приложений из SDK Windows 1.0, я перенёс их на Windows 3.1 и модифицировал для компиляции под Microsoft Visual C++ 1.52. Убедившись в наличии рабочих файлов проекта, я перенёс их на Visual C++ 6 под Windows NT 4. Это обеспечило 32-битную базовую версию и позволило решить проблемы с API, такие как изменение hPrevInstance и удаление некоторых не-Ex вариантов функций из 16-битных в 32-битные. Затем я перенёс приложения на Server 2005 и Visual Studio 2005, где сначала выполнил портирование на x64, а затем попытался создать версию на базе Itanium, но потерпел неудачу из-за раздражающей политики Microsoft, которая ограничивает доступ к инструментам разработчика абсурдной платой. После долгих мучений мы перешли к Windows 11 и Visual Studio 11, где после импорта файлов проекта всё прекрасно работало на 64-битных платформах. Это, конечно же, подтолкнуло меня к дальнейшим действиям в чате. Сначала я запустил приложения в WINE, затем мы перешли к ReactOS, OS/2, и, в общем, полностью вышли за рамки программирования x86 и оказались на NT4 на MIPS, что потребовало использования специальной версии Visual C++ 4 для компиляции бинарных файлов для ранее не реализованного мира, отличного от x86. После этого мы завершили трансляцию, и я решил переделать её в полноценное видео с третьим мероприятием NCommander в реальном времени. #ncommander #retrocomputing #window1 #16bit