powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / программка заработала на 4.5.2 хотя нужен был 4.6.2
6 сообщений из 6, страница 1 из 1
программка заработала на 4.5.2 хотя нужен был 4.6.2
    #39896043
Добрый день!
Разработал небольшую программку C# WinForms на .Net Framework 4.6.2
Установил на комп сотрудницы (Windows 7) и запустил - как ни странно программка запустилась,
хотя на её компе не установлен.Net Framework 4.6.2 а есть только 4.5.2
Как можно объяснить, что программа работает, хотя целевого фреймворка на компе нет?
...
Рейтинг: 0 / 0
программка заработала на 4.5.2 хотя нужен был 4.6.2
    #39896056
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это чудо! Неисповедимы пути микрософтовы!
...
Рейтинг: 0 / 0
программка заработала на 4.5.2 хотя нужен был 4.6.2
    #39896061
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4.6.2 - это по сути не полноценный фреймворк, а обновление для более ранних версий. Если программа не использует какие-то фичи, которые появились именно в 4.6.2, то она вполне может работать на более ранних фреймворках.
...
Рейтинг: 0 / 0
программка заработала на 4.5.2 хотя нужен был 4.6.2
    #39896074
Сон Веры Павловны,
спасибо
...
Рейтинг: 0 / 0
программка заработала на 4.5.2 хотя нужен был 4.6.2
    #39896088
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
все зависит от того как линкована сборка, возможно настроить механизм выбора версии сборки
вот пример конфигурации, где настроено, что при запросе сборки System.ValueTuple любой версии до 4.0.3.0 использовать всегда только 4.0.3.0. Целевую версию вы определяете сами.
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.ValueTuple" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>


Так же в манифесте приложения можно жестко привязать версию линкованной сборки
...
Рейтинг: 0 / 0
программка заработала на 4.5.2 хотя нужен был 4.6.2
    #39896101
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtes
все зависит от того как линкована сборка, возможно настроить механизм выбора версии сборки
вот пример конфигурации, где настроено, что при запросе сборки System.ValueTuple любой версии до 4.0.3.0 использовать всегда только 4.0.3.0. Целевую версию вы определяете сами.
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.ValueTuple" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>


Так же в манифесте приложения можно жестко привязать версию линкованной сборки

Можно, только вот версии сборок фреймворка - например, mscorlib - одни и те же что для 4.5, что для 4.6.2, и если используются только и исключительно сборки фреймворка, то binding redirect не поможет никак.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / программка заработала на 4.5.2 хотя нужен был 4.6.2
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]