2013-11-26 3 views
1

Предположим, что я буду нацеливать свое приложение Winforms на Framework 4.5, но пользовательский компьютер имеет только Framework 3.X, и пользователь пытается запустить приложение, тогда приложение не будет запущено, потому что необходимая версия фреймворка не установлена ​​на машина ...Автоматически предлагать установить необходимую версию фреймворка, если она не установлена?

... но есть способ выполнить из моего приложения интеллектуальную профилактическую операцию в этом случае? (вместо того, чтобы позволить ОС Windows отображать непрозрачную ошибку msgbox)

Что я хочу сделать, например, показать msgbox, чтобы рекомендовать пользователю загрузить пакет X framework в X-url, чтобы иметь возможность запускать приложение, только если требуемая структура не установлена ​​на машине.

ответ

4

Если вы распространяете приложение с помощью ClickOnce, вы получите именно это (среди действительно других интересных функций как автоматическое обновление).

+0

мое приложение является окна формы проекта, извините, перепутал вы – pitoloko

+0

ClickOnce отлично работает с WinForms, проверить это для получения дополнительной информации http://msdn.microsoft.com/en-us/library/wh45kb66 (v = vs.90) .aspx – hmnzr

+0

@pitoloko это именно то, что нужно использовать для развертывания ClickOnce. Похоже, ты в свой счастливый день. Взгляните на http://msdn.microsoft.com/en-us/library/wh45kb66(v=vs.90).aspx – tucaz

1

Вы можете просто сделать это, изменив настройку в соответствии с предварительным условием проекта установки.

  1. правой кнопкой мыши проект установки и перейти к properties
  2. Выберите Prerequisite кнопку
  3. Это откроет другое всплывающее окно на кнопку в окне вы увидите три варианта кнопки радио.
  4. Выберите Download the prerequisite from the component vendor's web site

Когда целевая машина не имеет .net кадра работу вместо сообщения об ошибке будет отображаться ссылка загрузки для загрузки рамки .net.

enter image description here