2010-10-19 3 views
3

У нас есть приложение, которое по разным причинам должно быть скомпилировано как 32-битное, так и 64-битное приложение. Дело в том, что мы хотим распространять оба установочных файла (msi) на одном компакт-диске. Есть ли условие запуска или запись autorun.inf, которые мы можем использовать, чтобы узнать, какой setup.exe запускать? Или нам нужно написать отдельный маленький exe, который вызывается автозапуском, и который определяет ОС, и вызывает соответствующий файл setup.exe?запуск правильного установщика для 32- и 64-разрядных приложений

ответ

1

Кажется, что нет поддержки 32/64bit обнаружения, присущей autorun.inf files.

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

  1. Создайте одно 32-разрядное приложение setup.exe (чтобы он работал на обеих платформах). В идеале это будет написано на C/C++, чтобы оно было как можно более быстрым и быстрым, и не имеет зависимости от других библиотек/фреймворков (например, static linked).
  2. Detect, если вы работаете на 64-битных или нет (см пример кода для Windows API IsWow64Process функции
  3. Выполнить соответствующий MSI
Смежные вопросы