Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > .NET для новичков > Запуск на разных версиях .NET Framework


Автор: headzero 19.9.2008, 17:39
Домустим приложение написано на .NET Framework 1.0, или 1.1. Но на машине установлен еще и .NET Framework 2.0. На какой версии CLR будет выполняться наше приложение? 1.0, 1.1 или 2.0? И как сделать так что-бы мое приложение запускалось и юзало именно .NET Framrwork 1.1 . т.е ту версию фреймворка, на которой оно написано?

Автор: PashaPash 19.9.2008, 17:42
headzero, http://msdn.microsoft.com/en-us/library/s80xxs7s.aspx

Автор: headzero 19.9.2008, 17:55
Я конечно не силен в английском. Я понял что имеет место Backward compatibility, это понятно что приложение написанное на 1.1 будет запускаться и на 2.0 но как запустить приложение написанное на 1.1 так что бы оно запускалось и юзало только 1.1 на компе где установленно и 1.1 и 2.0?

Автор: GX777 19.9.2008, 18:27
нужно в конфигурационном файле программы написать
 
Код

<configuration>
<startup>
<supportedRuntime version = "v. 1.1" />
</startup>
</configuration>


(так пише Агуров  в C# Сборник рецептов)

А теперь вопрос : Где нах - ся этот конфигурационный файл?)

Автор: PashaPash 19.9.2008, 18:34
headzero, в том же разделе
 The version of the .NET Framework that an application runs on is determined as follows:

    *      If the version of the .NET Framework that the application was built against is present on the computer, the application runs on that version.
    *      If the version of the .NET Framework that the application was built against is not present and a configuration file does not specify a version in a <supportedRuntime> Element, the application runs on the latest version of the .NET Framework that is present on the computer.
    *      If the version of the .NET Framework that the application was built against is not present and the configuration file specifies a version in a <supportedRuntime> Element, the application runs on the latest version that is specified in the application configuration file and is present on the computer. 

Автор: headzero 21.9.2008, 16:54
Спасибо PashaPash. Итак окончательно: программа запускается на тоя версси фреймворка, на которой написана (если таковая версия присутствует)?

Автор: PashaPash 22.9.2008, 12:57
headzero, под которую была скомпилирована.

Автор: QryStaL 22.9.2008, 13:01
Цитата(headzero @  21.9.2008,  16:54 Найти цитируемый пост)
программа запускается на тоя версси фреймворка, на которой написана (если таковая версия присутствует)

Не обязательно. К примеру, если приложение скомпилировано под 2.0, то оно может также запускаться на компах, где установлен .NET Framework 3.5

Автор: PashaPash 22.9.2008, 13:31
Цитата(QryStaL @  22.9.2008,  13:01 Найти цитируемый пост)

Не обязательно. К примеру, если приложение скомпилировано под 2.0, то оно может также запускаться на компах, где установлен .NET Framework 3.5 

Если на машине стоит 2.0 и еще пару других версий, то запустится именно на 2.0, никаких "необязательно". Вопрос был не про требуемую версию, а про то, под какой из нескольких установленных запустится. И ответ тоже smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)