vc ++ установить создатель - PullRequest
2 голосов
/ 17 марта 2009

VC ++ 6.0 Проект

После завершения моего проекта я создал EXE-файл проекта, используя Create Installer,

Но проблема в том, что без программного обеспечения vc ++ 6.0 проект EXE не будет выполняться,

показывает ошибку:

Это приложение не удалось выполнить, поскольку MFC42.DLL не найден. Повторная установка приложения может исправить это.

Когда я инсталлирую программное обеспечение vc ++ 6.0, тогда все будет нормально без ошибок.

Пожалуйста, помогите мне в любом случае, если без vc ++ 6.0 s / w проект должен быть выполнен.

или плз подскажите как сделать проект EXE (настройка)

Ответы [ 3 ]

1 голос
/ 18 марта 2009

Возможно, вы захотите перейти к более широко используемой утилите установки. Многие проекты с открытым исходным кодом (а также значительное количество коммерческих проектов) используют InnoSetup для сборки установщиков.

Независимо от того, какой инструмент вы используете, общий процесс один и тот же.

  1. Создайте сборку выпуска вашей программы.
  2. Определите все файлы, которые необходимо установить. (Попробуйте инструмент depends.exe, поставляемый с Visual Studio, чтобы узнать, какие библиотеки DLL необходимы.) Не забудьте о файлах справки и примерах.
  3. Список файлов и других задач во время установки (создание ярлыков, регистрация DLL и т. Д.).
  4. Сборка и тестирование установочного пакета.

Тестирование установок может быть трудным, и действительно должно быть предметом совершенно другого вопроса. Будьте осторожны, чтобы то, что установлено, можно было удалить, и чтобы запуск установщика снова сделал что-то разумное. Также может быть хорошей идеей убедиться, что у вас есть способ определить, пытается ли пользователь установить обновление, пока старая копия еще работает, и предпринять соответствующие действия, когда это произойдет. (Будет.)

1 голос
/ 16 апреля 2015

Если ваше приложение зависит от времени выполнения Visual C ++, вы можете включить их как часть вашего установщика, чтобы упростить процесс установки для ваших конечных пользователей. Это как описать включение модулей слияния Visual C ++ во время выполнения в ваш установщик и объясняет ожидаемые предупреждения ICE, которые вы увидите.

Шаг 1. Получение правильных модулей слияния Visual C ++ во время выполнения Модули слияния среды выполнения Visual C ++ устанавливаются вместе с Visual Studio и находятся в папке \ Program Files \ Common Files \ Merge Modules. Файл среды выполнения Visual C ++ 8.0 - Microsoft_VC80_CRT_x86.msm. Этот же MSM используется для среды выполнения Visual C ++ 8.0 SP1, однако он обновляется на месте установщиком Visual Studio 2005 SP1. Файл среды выполнения Visual Studio 9.0 - Microsoft_VC90_CRT_x86.msm. Как правило, нет необходимости включать политики MSM как часть установки.

Шаг 2. Включите модуль слияния в ваш установщик Чтобы включить модуль слияния в ваш установщик, используйте элементы и. В следующем примере показано, как используются эти элементы.

Элемент Merge обеспечивает включение модуля слияния в окончательный пакет установщика Windows. Уникальный идентификатор назначается с помощью атрибута Id. Атрибут SourceFile указывает на расположение модуля слияния на вашем компьютере. Атрибут DiskId должен соответствовать DiskId, указанному в элементе Media вашего проекта. Атрибут Language всегда должен быть 0.

Элемент MergeRef используется внутри элемента Feature для фактической установки модуля слияния. В приведенном выше примере функция, специфичная для среды выполнения, создается и помечается как скрытая, чтобы ее нельзя было отобразить в любом пользовательском интерфейсе, который может использовать ваш установщик. MergeRef ссылается на модуль слияния по его уникальному идентификатору.

1 голос
/ 17 марта 2009

Проверьте, распространяется ли mfc42.dll свободно. Я думаю, что это часть библиотек времени выполнения Microsoft, и, следовательно, ее распространение должно быть законным, но вы должны это проверить (если кто-то другой не может это проверить).

Затем просто включите эту dll в вашу настройку, чтобы dll находился в той же папке, из которой запускается exe.

...