Как я могу сообщить пользователю приложения XCOPY WPF 4, что ему нужно установить.NET 4?
Я сделал небольшое приложение-инструмент для Visual Studio 2010, чтобы распространять его, я заархивировал эти файлы из папки Release:
Data
MainData.mdf
MainData_log.ldf
DataBackup.exe
DataBackup.exe.config
FluidKit.dll
затем разархивируйте их на целевой машине (без установки).
Когда я запускаю его на компьютере с Windows 7 с установленным.NET 4, он работает нормально.
Когда я запускаю его на компьютере с Vista, на котором установлен.NET 3.5, выдается сообщение об ошибке по умолчанию:
Чтобы запустить это приложение, вам необходимо установить следующую версию.NET: v.4.0.21006 Чтобы узнать, как установить эту версию, обратитесь к распространителю этого приложения.
Когда я запускаю его на компьютере с XP с установленным.NET 3.0, выдает ошибку, из-за которой приложение не запускается, но не упоминается установка.NET.
Могу ли я в любом случае перехватить эти сообщения, например, чтобы получить красивое, нестандартное сообщение с инструкциями по установке и ссылкой для загрузки.NET 4?
2 ответа
Я думаю, что единственным решением является создание небольшого приложения, отличного от.NET, которое проверяет, установлен ли.NET Framework, и, если да, запускает ваше приложение.NET. Для части обнаружения структуры, см., Например, здесь: http://www.codeproject.com/KB/dotnet/DetectDotNet.aspx
Проверьте событие Application.DispatcherUnhandledException... возможно, вы могли бы глобально перехватить исключение и проинформировать своего пользователя о необходимости установки.NET 4.0. Вероятно, это может помочь вам определить, какие версии платформы.NET установлены, и, возможно, даже избегать использования функций.NET 4, если вы видите, что на клиентской машине его нет.