2015-09-27 6 views
38

Популярный поставщик финансового программного обеспечения distributes a "private" .NET framework:Что такое «частная .NET framework»?

Private Bloomberg .NET framework

Что такое частная структура .NET?

Почему кто-то хочет иметь свою личную версию .NET framework?

В основных терминах, как можно создать частную платформу .NET?

+0

Можно получить код рамки из GitHub, внести некоторые изменения и утверждать, что он 'private', но не уверен, что это законно! Или, может быть, они ссылаются на их программное обеспечение, а не на структуру. –

+8

Из документации Bloomberg: «Bloomberg распространяет виртуальную версию платформы .NET для всех клиентов, которая позволяет использовать платформу .NET без необходимости ее установки на компьютере». Не совсем уверен, как это сработает, звучит, как маркетинг, говорят со мной. –

+0

@DavidM Согласно коду в ответе Теодора, фреймворк Bloomberg .NET * установлен, если MS .NET не присутствует. –

ответ

28

Я никоим образом не связан с этим поставщиком и поэтому, очевидно, не могу говорить за них о том, что они означают. При том, что на пути ...


их FAQ состояний следующее:

Что такое частный .NET Framework программное обеспечение Bloomberg?

Эти программные компоненты устанавливаются, только если рабочая станция не имеет соответствующего установленного программного обеспечения Microsoft .NET Framework. В случае отсутствия исходных версий Microsoft (3.5 SP1 и 4) в процессе первоначальной установки будет установлен только частный компонент v1.5 SP1. Установочный файл (bnetupd.exe) для частной версии v4 будет скопирован в каталог \ blp \ wintrv для установки позднее.

Похоже, что они распространяют свою собственную версию .NET Framework, и эта версия используется, если на рабочей станции не установлена ​​официальная платформа .NET Framework. Обоснованием этого может быть столь же простым, чтобы избежать резких изменений в рабочей станции пользователя:

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

Что касается вопроса о том, как вы это сделаете, ответ заключается в том, что в первую очередь вам необходимо иметь какую-то лицензию, которая позволяет вам это делать. В общем, вы можете получить часть программного обеспечения со своей лицензией по умолчанию или вы можете договориться о более удобной лицензии со своим поставщиком. В любом случае вам необходимо убедиться, что этот вид использования и перераспределения разрешен по лицензии у вас есть.

Оттуда, возможно, есть несколько способов сделать это (включая receiving the source code и сделать индивидуальную сборку, используя пользовательский компоновщик или bundling tool - или какой-то обман при запуске).

Наблюдая за поведением установщика этого поставщика внутри виртуальной машины, я вижу, что сборки фреймов действительно развернуты как native images в пользовательском каталоге, который, похоже, имитирует структуру типичного установочного каталога .NET. Имя этого настраиваемого каталога - %WINDIR%, что для меня, похоже, предлагает некоторую переадресацию с использованием переменных среды (потому что, если вы отключите переменную среды, она «расширится» до ее имени).

В любом случае развернутая инфраструктура используется только программным обеспечением поставщика и, похоже, не влияет на другие приложения .NET, они просто игнорируют ее. Так что фраза конфиденциальная .NET Framework достаточно точна.

+1

Это звучит ужасно для меня. Что произойдет, если позже пользователь захочет установить MS .NET 4.0 для поддержки другого программного обеспечения? Будет ли он/она иметь две версии? Или Бломберг признан «.NET»? Будут ли исправления ошибок MS применены к Bloomberg .NET? Есть ли разница между MS и Bloomberg .NET в конце концов? –

+9

@HagenvonEitzen Я закончил установку вышеупомянутых инструментов, чтобы увидеть, что они на самом деле делают. Как и ожидалось, эта частная .NET-инфраструктура * не * установлена ​​в каталоге Windows, но в другом, обычном. Это касается только программного обеспечения поставщика - другие исполняемые файлы на базе .NET просто игнорируют его. –

+1

И это приводит нас к 2004 году Спольского «Пожалуйста, сэр, у меня есть линкер?», В котором он заметил, что отсутствие возможности создания исполняемого файла, содержащего все необходимые библиотеки, - это отход от (тогда) традиционного распространения приложений Windows: http: //www.joelonsoftware.com/articles/PleaseLinker.html – chesterbr

2

Я не думаю, что они говорят, что это связано с .NET Framework, только что Блумберг-специфический код, который работает на .NET, что они называют рамки. Частным, скорее всего, является тот факт, что они требуют пользовательского доступа к своим серверам через некоторые пользовательские учетные данные.

+2

Неверный комментарий Дэвида М. –

+3

По-видимому, так, но Bloomberg не совсем прозрачен в своем маркетинге. –

7

Microsoft решила, что not to publish redistributable .NET Framework 3.5 для Windows 8, Windows 10, Windows 2012 сервер и онлайн-установщик очень часто does not work. Поэтому другим поставщикам необходимо создавать собственные автономные установщики. Это не первая домашняя структура, которую я встречал. Даже если it is not legal, разработчики перенаправляются на поддержку приложений .NET 3.5 на серверах Windows 8, Windows 10 и Windows 2012.