Подтвердить что ты не робот

.NET 3.5 Распространяемый - 200 МБ? Другие варианты?

В последнее время я использовал множество новых функций .NET 3.5 в работе, которую я делал. Приложение, которое я создаю, предназначено для распространения среди потребителей, у которых, вероятно, не будет последней версии (или, возможно, любой версии) платформы .NET на своих машинах.

Я пошел, чтобы загрузить распространяемый пакет .NET 3.5, чтобы узнать, что он почти 200 МБ! Это неприемлемо для моего приложения, потому что оно должно быть быстрым и безболезненным потребительским приложением, которое быстро устанавливается и сохраняет низкий профиль на пользовательской машине. Для пользователей, у которых уже установлен .NET 3.5, наши бинарные загрузки были мгновенными. Эта горилла 200 МБ будет более чем в четыре раза больше размера загрузки. Есть ли другой вариант, чем этот распространяемый пакет, который я могу использовать, чтобы убедиться, что инфраструктура находится на машине, которая не выведет пользователя из нашего "быстрого и безболезненного" рабочего процесса? Наше целевое время от начала загрузки до завершения установки составляет менее двух минут. Возможно ли это для тех, у кого еще нет .NET?

4b9b3361

Ответ 1

Это одна из печальных причин, по которым я по-прежнему нацелен на .net 2.0:/

Но людям не обязательно нужен полный пакет 200 МБ. Существует 3 MB Bootstrapper, который загружает только необходимые компоненты:

.NET 3.5 SP1 Bootstrapper

Однако в худшем случае все еще довольно тяжелая загрузка. Кроме того, см. в этой статье для более подробного объяснения размера и альтернативного решения проблемы размера.

Дополнение: после ответа на этот вопрос Скотт Гензельман создал SmallestDotNet.com, который определит наименьшую требуемую загрузку. Не меняет сценарий наихудшего случая, но все же полезно знать.

Ответ 2

Как только .NET Framework 3.5 SP1 выйдет (должно быть довольно скоро), будет второй вариант фреймворков, а именно "Профиль клиента", который представляет собой сокращенную структуру, которая весит всего около 30 МБ из памяти. Он не включает все пространства имен и классы полной структуры, но должен быть достаточным для большинства обычных приложений в теории. При необходимости он может быть обновлен до полной рамки (например, если обновление вашего программного обеспечения вводит новую зависимость)

Дополнительная информация приведена здесь: Блог группы BCL

Ответ 3

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

Вот хороший обзор.

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

Ответ 5

Кроме того, стоит также (в некотором роде) загрузить пакет обновления. Фактически, в зависимости от того, как создаются ваши исполняемые файлы, вам может потребоваться установить Framework и пакеты обновления.

Ответ 6

Для записи .NET Framework 3.5 SP1 требуется для установки Microsoft SQL Server 2008 и RTM'd примерно в то же время, что и релиз на этой неделе. Тем не менее мощная установка, но вы можете извлечь из нее профиль клиента. Просто не уверен, как.