Как я могу ориентироваться на Windows 98?
У меня острая необходимость в разработке приложения для Windows 98, и у меня нет возможности использовать другую операционную систему. В наши дни, есть ли какой-нибудь современный SDK, который я могу использовать для разработки приложения? Что было бы замечательно, если бы был какой-то способ нацеливаться на Windows 98 из Visual Studio 2015, но, насколько я знаю, это невозможно сделать.
Могу ли я написать и скомпилировать приложение для Windows 98 с помощью Visual Studio 2015? Если нет, то каков мой следующий лучший вариант?
1 ответ
Я предполагаю, что вы пишете нативный код: Windows 98 использует Win32-API, как XP и современные версии Windows. Некоторые вещи отличаются, например, отсутствуют такие API, как VirtualAllocEx(). Если вы избегаете этих API-интерфейсов ( https://msdn.microsoft.com/ имеет раздел минимальных требований для каждого API-интерфейса) и пишете собственный код, ваша программа должна работать и в Windows 98. Если у вас есть проблемы с Visual Studio, вы можете использовать старый добрый gcc и IDE, такие как Eclipse, Code::Blocks и т. Д. Просто убедитесь, что вы не скомпилировали его для 64-битной платформы. В противном случае вы получите бинарный файл PE+, который не будет работать в Windows 98.
РЕДАКТИРОВАТЬ:
В соответствии с обсуждением в комментариях несколько обновлений: Хотя PE для 32-бит (скомпилированный на современном Windows-боксе) совместим с Windows 98, могут быть проблемы с Visual Studio из-за его библиотеки времени выполнения. В качестве альтернативы, вы можете попробовать
- компилировать без времени выполнения
- используйте MingW, поскольку он использует ms vcrt.dll
Тем не менее, все еще сложно проверить, какая версия Windows поддерживает определенные API из-за обновлений в MSDN. Более старая копия MSDN могла бы помочь в этом пункте.