Форум программистов, компьютерный форум, киберфорум
Наши страницы
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
 
jan120117
0 / 0 / 1
Регистрация: 06.02.2017
Сообщений: 20
1

Запуск Windows Form Applications на машине с ранними версиями Windows/.Net

11.05.2018, 10:04. Просмотров 336. Ответов 2
Метки нет (Все метки)

Помогите решить проблему, есть приложение WFA написанное на VB.NET Framework 4.0, это приложение необходимо запускать на различных машинах под различными версиями Windows (будь то Windows Xp с .NET 2.0 или Windows 7 с .NET 3.5), при этом устанавливать обновление FrameWork-ов до версии 4.0, на эти машины - нет возможности, вообще устанавливать что-либо на эти машины - нет возможности, нужно сугубо копировать на диск .exe и .dll приложения и запускать его на машине. Какие решения и есть ли вообще решения (кроме как обновить Framework на целевой машине) есть у данной проблемы? Существуют ли, быть может, какие-либо виртуальные контейнеры в которые можно упаковать приложение, нечто на подобии Docker? Например чтобы приложение запускалось как бы в минимизированной виртуальной среде (псевдо-системе)? Hе использовать же ради одного приложения настроенный образ системы на VirtualBox или VMware...
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.05.2018, 10:04
Ответы с готовыми решениями:

Запуск в Windows 7 образа Windows XP Mode на виртуальной машине Windows Virtual PC
Столкнулся со следующей проблемой. После установки Virtual PC для Windows 7 (64-бит) и Windows XP...

Visual Studio 12 не компилирует проекты созданные ранними версиями
Доброго времени суток! вчера скачал VS 12 все бы хорошо, но почему-то VS не компилирует проекты...

Запуск Windows 8 на виртуальной машине
Вот есть тема http://www.cyberforum.ru/windows8/thread353968.html У меня проблема. При установке...

Как открыть проект, созданный в VS 2010 более ранними версиями VS
не подскажите как перевести из 2010 visual studio в 2005 чтобы могло открывать

Запуск Windows Form а не консоли
Всем привет. Недавно начал кодить на C++, до этого онли VB6/VB.NET. Скачал Visual Studio 2010 -...

2
Someone007
3274 / 2436 / 1080
Регистрация: 09.05.2015
Сообщений: 6,001
Завершенные тесты: 1
11.05.2018, 11:01 2
Цитата Сообщение от jan120117 Посмотреть сообщение
Какие решения и есть ли вообще решения (кроме как обновить Framework на целевой машине) есть у данной проблемы?
На данный момент решений кроме как обновить .NET Framework до нужной версии нет.

В следующем году выйдет .NET Core 3.0 с поддержкой десктопных GUI приложений, что позволит запускать .NET приложения вообще без установленного .NET Framework (будет возможность таскать .NET Runtime в папке с программой, и даже компилировать все это в единый EXE файл), но я уверен что и там поддержки Windows XP не будет по очевидным причинам.

Добавлено через 13 минут
Еще есть коммерческие решения типа Turbo Studio, всего лишь от 2000$ в год.
1
Yury Komar
Модератор
Эксперт .NET
2748 / 2497 / 400
Регистрация: 27.01.2014
Сообщений: 4,447
Завершенные тесты: 1
11.05.2018, 11:38 3
А по-моему можно написать ПО по NET 2.0 и в файле .config прописать версии фрэймворка с которыми данное ПО запускается.! Где-то я такое уже видел.

Добавлено через 7 минут
А вот и ответ/решение:
Совместимость версий приложений
По умолчанию приложение запускается в той версии платформы .NET Framework, для которой оно было создано. Если эта версия отсутствует и в файле конфигурации приложения не определены поддерживаемые версии, может произойти ошибка инициализации .NET Framework. В этом случае попытка запустить приложение завершится сбоем.

Чтобы определить конкретные версии, в которых запускается приложение, добавьте в файл конфигурации этого приложения один или несколько элементов <supportedRuntime>. Каждый элемент <supportedRuntime> определяет поддерживаемую версию среды выполнения. При этом первый элемент указывает наиболее предпочтительную версию, а последний элемент — наименее предпочтительную версию.

XML
1
2
3
4
5
6
<configuration>  
   <startup>  
      <supportedRuntime version="v2.0.50727" />  
      <supportedRuntime version="v4.0" />  
   </startup>  
</configuration>
Источник здесь
Про SupportRuntime здесь
Добавлено через 12 минут
Но нельзя забывать о том, что совместимость компонентов работает совсем не ьак, как само приложение, и скорее всего для каждой версии NET Framework, которая требуется для запуска ПО, вам необходимо будет иметь в комплекте версию DLL скомпилированную под данный Framework... Надеюсь понятно описал свою мысль
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.05.2018, 11:38

Литература по С# по Windows Form в .NET 3 и .NET 4
Подскажите пожалуйста литературу, которая поможет при работе с виндоус форм(логика использования,...

Запуск/Создание Windows Form в Win32 приложение !
Здравствуйте! Использую Visual Studio 2010. Учусь делать приложение игру на директх. Вопрос такой...

Запуск программ .net из Windows
Здраствуйте, нужна помощь. Срочно надо чтоб работала программа Rumus2 (по биржевой торговле...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru