![]() |
Неполная совместимость старой программы
Старая-престарая обучающая программа, созданная на заре моей карьеры и откомпиленная еще в версии 1.67, перестала запускаться на части новых рабочих машин. Что, исходя из ёё возраста, было весьма ожидаемо.
Беда заключается в том, что программа до сих пор достаточно активно использовалась и по идее должна использоваться впредь. А ёйные исходники, полностью следуя законам Мерфи, радостно и уже давно канули в Лету, или иную хрень ёё заменяющую. Вопрос: как заставить программу вновь работать на новых машинах? Переписать код с нуля? - А кто мне за это будет платить? Воспользоваться декомпилером?- Не завалялась ли у кого-нибудь парочка декомпилеров для Блиц-программ? ... В общем, буду благодарен за любые полезные советы. ) |
Re: Неполная совместимость старой программы
а если режим совместимости поставить... будет работать?
|
Re: Неполная совместимость старой программы
Цитата:
Несовместимость старых Блицев с новыми машинами - явление комплексное, самодостаточное и на какой-то там "Режим совместимости" как правило плююще с Ёйфелёвой колокольни. |
Re: Неполная совместимость старой программы
тогда вариант пустить под дебаггером и трассировать до ошибки, дальше по обстоятельствам )))
|
Re: Неполная совместимость старой программы
Diplomat, всё просто.
1. Компилим в блитз 3д свежей версии пустой исходник...ну или из пары строчек. 2. ResHacker'ом из старого экзешника сохраняем в res-файл все его ресурсы... ну можно невесь а например только ресурс rcdata (вроде). 3. Опятьже резхакером открваем новый экзешник (тот что из пустого исходника) и импортируем туда полученый ранее res файл. Сохраняем.. Вуаля наша программа откомпилена на свежей версии блитца и должна работать. |
Re: Неполная совместимость старой программы
но если блиц юзает библы, то могет не прокатить(разные версии по разному хронят инф. в памяти;)).
|
Re: Неполная совместимость старой программы
2 SBJoker : Спасибо, изящное решение! )
Правда в моём случае оно не работает. Пробовал перегонять старый ресурс в ЕХЕ-шники версий от 1.91 до 1.99 - по нулям. Запуск, чОрный экран, завершение работы без сообщений об ошибках. Ни на работу оригинальной программы, ни на работу "пустого кода" не похоже. И так на всех машинах. В остальных случаях метод работает нормально: если таким же образом пропускать через РесХакер более новые Блицевские ЕХЕ-шники - всё работает штатно... Оригинальная "старая" программа штатно работает на всех компах, кроме новых и машин заказчегофф- т.е. тех машин, где она работать должна. ))) |
Re: Неполная совместимость старой программы
Что за программа ?
|
Re: Неполная совместимость старой программы
3Д-обучалка. ПорядокЛиквидацииАаварийныхСитуаций в форме небольшого адвенчура от первого лица. Внешних библиотек не использует. Нестабильных функций - тоже не использует.
Просто версия старая... или компы убитые. Или и то, и другое. На моих личных машинах работает нормально, что, впрочем, никак ёё не извиняет. |
Re: Неполная совместимость старой программы
гм..а на новых машинах дерикт икс как таковой вообще есть?
|
Re: Неполная совместимость старой программы
На "новых"- АХрИЗн, я их в глаза не видел.
На старых- всё есть. Более того- оно не только ест, но иногда даже работает. Ибо аналоги запускаются нормально. Глюки программы исключены: в меру своих сил она безглючно работала годами, а ёё полная копия и сейчас рабоает на моих машинах. |
Re: Неполная совместимость старой программы
Интересно, что ты там используешь, может длл какую то ?
|
Re: Неполная совместимость старой программы
Tormoz-
Цитата:
|
Re: Неполная совместимость старой программы
- Шо, машина не едет ?
- Да вот не едет... - А стекло тряпочкой протирал ? - Да - А музыку громче делал ? - Конечно ! - А колеса ногой пинал ? - Пинал. все ноги отбил ! - Ну, тогда не знаю... Попробуй другой прогой менять ресурсы. я ResHacker-ом делал |
Re: Неполная совместимость старой программы
Попробовал- не помогло. В общем, случай оказался клинническим, ибо для всех остальных- описанный метод отлично работает.
... В итоге проблемма решена фирменным анально-реверсивным способом: убитый трехлетней давности КД-РВ с бекапами был пропущен через несколько восстанавливающих софтин. Половина данных с него прочиталась, на выходе выдав кашу из 1028 файлов с произвольными именами и расширениями. Заботливо вручную проглядев их через НортонКомандеровский просмотрщик (это быстрее, чем Блокнотом), я выковырял из этой каши почти все исходники программы, а недостающие- дописал на коленке по принципу "ну его туды в качель". Программа откомпилена в 199-й версии и вернулась в строй. Итого- всего лишь 36 часов головной боли, глаза, полные песка, и один из КД-приводов, переставший нормально работать от перегруза. Товарищи! Не делайте как я! Наоборот- делайте надёжные бекапы всех сколь-нибудь значимых данных! ... Всем, кто пытался помочь- большое спасибо! ) |
Часовой пояс GMT +4, время: 04:01. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot