Возможно, лучше бы разделить программу - на две.
(Плюс дать кросс отсылки).
Минимум же - добавить в имя VS6.
А, так же указать ОС на которых такая ошибка, т.к.в ч.н.на XP - таких не припомню, хоть на VS6 написанно очень много программ, начиная с того же HL2, который хоть и видел в нём такое - но, не при старте игры, а на старте уровня и то на другом более раннем ПК с той же ОС, но ведь с более новой начинкой даже этого уже небыло... так что вряд ли мы говорим об одном и том же.
Так же, очень не хватает перечня известных программ нуждающихся и тем более для VS6 - спустя десятилетия то и не вспомнить. Может что захотелось бы запустить.
Впрочем, для несовместимых ПО с NT и выше
- полюбому лучше исп-ть ту ОС на что рассчитанно ПО,
в дуалбуте. А, там где он нвозможен в т.ч.и по соображения безопасности, если комп подключён к сети и наличествует доп.проактивная антивирусной защита
- любые DOS программы могут запросто выйти в Ring0, всё обойдя... Так что только DOSBOX или доп.ПК - опять же с ОС [в дуалбуте] на которую рассчитана ПО, иначе всёравно другие баги вылезут в ПО. Это понятно не касается вашего патчинга ПО на VS6.
Спасибо за замечания. Программа изначально писалась для исправления нулевых секций, поэтому исправление импорта туда всунуто "до кучи". Насчёт списка программ - их не так уж и много (именно известных), в основном проблемы с No-CD для старых игр, где криво снята навесная защита (то ли SafeDisk, то ли SecuROM). При как попало пересозданном импорте со снятого дампа игры работают в Windows 9x, но на более новых системах уже всё. Та же проблема с нулевыми размерами секций - до NT 5.x всё работало, потом в системный загрузчик добавили более жёстких проверок и программы больше не запускаются. Более того, количество запускающихся программ с каждой новой версией Windows всё больше сокращается. Вот пример, когда Windows 8 стало, вдруг, волновать наличие атрибута readable в .reloc секции.