Как выполнить 16-битный установщик на 64-битной Win7? - PullRequest
24 голосов
/ 02 февраля 2012

Я пытаюсь установить элементы управления Sheridan (ActiveThreed 2.01) на 64-разрядную версию Win7, но, очевидно, это 16-разрядный установщик, поэтому он не будет выполняться.

Как лучше всего обойти эту проблему?

Error message

Может кто-нибудь прокомментировать, будет ли http://homepage3.nifty.com/takeda-toshiya/msdos/index.html полезным?

Ответы [ 6 ]

31 голосов
/ 13 апреля 2012

Мне потребовались месяцы, чтобы найти решение этой проблемы. Вам не нужно устанавливать виртуальную среду под управлением 32-разрядной версии Windows, чтобы запустить программу с 16-разрядным установщиком в 64-разрядной версии Windows. Если сама программа 32-битная, а установщик 16-битный, вот ваш ответ.

Есть способы изменить 16-разрядную программу установки, чтобы она стала 32-разрядной, поэтому она будет установлена ​​на 64-разрядную версию Windows 7. Я нашел решение на этом сайте:

http://www.reactos.org/forum/viewtopic.php?f=22&t=10988

В моем случае программа установки была InstallShield 5.X. Проблема заключалась в том, что программа setup.exe, используемая InstallShield 5.X, является 16-разрядной. Сначала я распаковал содержимое программы установки (изменил расширение с .exe на .zip, открыл его и распаковал). Затем я заменил исходный 16-разрядный файл setup.exe, расположенный в папке disk1, 32-разрядной версией InstallShield - setup.exe (загрузите этот файл с сайта, указанного в приведенной выше ссылке). Затем я просто запустил новый 32-битный файл setup.exe на диске 1, чтобы начать установку, и моя программа установилась и отлично работает на 64-битной Windows.

Вы также можете упаковать эту измененную установку, чтобы ее можно было распространять как программу установки, используя бесплатную программу, например Inno Setup 5.

7 голосов
/ 02 февраля 2012

Вы не можете запускать 16-разрядные приложения (или компоненты) в 64-разрядных версиях Windows . Этот слой эмуляции больше не существует. 64-разрядные версии уже должны обеспечивать уровень совместимости для 32-разрядных приложений.

Необходимо отказаться от поддержки 16-битных , в конечном итоге , даже в культуре, где обратная совместимость имеет священное значение. Переход на 64-битную версию показался таким же удачным временем, как и любой другой. Трудно представить, чтобы кто-то в дикой природе все еще использовал 16-разрядные приложения и пытался перейти на 64-разрядные ОС.

Как лучше всего обойти эту проблему?

Если сам компонент является 16-разрядным, то использование виртуальной машины с 32-разрядной версией Windows - ваш единственный реальный выбор. Oracle VirtualBox является бесплатным и постоянным фаворитом.

Если только установщик является 16-разрядным (и он устанавливает 32-разрядный компонент), то вы могли бы иметь возможность использовать такую ​​программу, как 7-Zip для извлечения содержимого установщика и установки их вручную. Давайте просто скажем, что это «решение» сопряжено с высоким риском, и у вас должно быть мало ожиданий, если таковые имеются.

Самое время перейти от 16-битных приложений, таких как Turbo C ++ и Sheridan. Я еще не сталкивался с чем-то, что могут делать элементы управления Sheridan, чего не могут делать встроенные элементы управления со времен Windows 95.

3 голосов
/ 07 февраля 2012

Я разместил на форумах Infragistics некоторую информацию для дизайнерских виджетов, которая может вам в этом помочь. Вы можете просмотреть сообщение по следующей ссылке:
http://forums.infragistics.com/forums/p/52530/320151.aspx#320151

Обратите внимание, что ключи реестра могут отличаться для разных продуктов, и вам может потребоваться установить их на 32-разрядной машине, чтобы узнать, какие ключи вам нужны.

1 голос
/ 21 августа 2012

Я в основном публикую это на тот случай, если кто-то придет и не знает, что VB2005 и VB2008 имеют утилиты обновления, которые преобразуют старые версии VB в его формат.Тем более что никто не удосужился указать на этот факт.

Очки приняты, но обслуживание этого продукта VB6 неизбежно.Также было бы дорого в человеко-часах заменить шериданские контроли местными.Простая разработка на 32-битной машине была бы лучшей альтернативой, чем делать это.Я хотел бы установить все на Win7 64-битной в идеале.- CJ7

Вы пытались использовать функциональность обновления кода VB Express 2005 +?

Если нет, 1. Сделайте копию папки с кодом и все.2. Импортируйте проект в VB express 2005. Это активирует мастер обновления.3. Отладка и запуск приложения.4. Создайте новый установщик, используя бесплатный инструмент MS.5. Теперь у вас есть 32-битное приложение с 32-битным установщиком.

Пока вы не сделаете это, вы никогда не узнаете, насколько сложно или сложно будет обновить и модернизировать программу.Вполне возможно, что мастер обновит элементы управления Sheridan до элементов управления VB 2005.Опять же, вы не будете знать, работает ли он и насколько хорошо он это делает, пока не попробуете.

В качестве альтернативы, придерживайтесь 32-битных версий Windows 7 и 8. У меня есть Windows 7 x64 и программа, которая будетне работать.Тем не менее, программа будет работать в Windows 7 32-битной, а также Windows 8 RC 32-битной.Под Windows 8 RC 32 мне было предложено включить 16-битную эмуляцию, что я и сделал, и программа довольно хорошо выглядела после слов.

0 голосов
/ 10 октября 2012

16-битный инсталлятор не будет работать в Windows 7, он больше не поддерживается в Win 7. Самая последняя поддерживаемая версия Windows, которая может работать с 16-битным инсталлятором: Vista 32-битная даже Vista 64-битная не ' t поддерживает 16-битный установщик .... ссылка http://support.microsoft.com/kb/946765

0 голосов
/ 16 июля 2012

Итог вверху: получите новые программы или получите более старый компьютер.

Решение простое. Это отстой, но это просто. Для старых программ поддерживайте работоспособность старого компьютера. Иногда вы просто не можете найти такой же игровой опыт в новых играх, как в старых. Иногда есть программы, у которых нет новых аналогов, которые делают то же самое. На данный момент у вас есть 2 варианта. На светлой стороне. Старые компьютеры могут стоить от 20 до 100 долларов, и это может купить всю систему; монитор, вышка, клавиатура, мышь и колонки. Если у вас есть терпение для запуска старых программ, вы должны иметь терпение, чтобы найти то, что вы ищете в объявлениях о поиске. У меня работает 4 старых компьютера; 2 окна 98, 2 окна XP. У меня и моей жены есть компьютеры win7.

...