Распространяемый .NET 3.5 - 200 МБ? Другие опции? - PullRequest
17 голосов
/ 09 августа 2008

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

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

Ответы [ 6 ]

20 голосов
/ 09 августа 2008

Это одна из печальных причин, по которой я все еще нацеливаюсь на .net 2.0, когда это возможно: /

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

.net 3.5 SP1 Bootstrapper

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

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

12 голосов
/ 09 августа 2008

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

Подробнее см. Здесь: Блог команды BCL

5 голосов
/ 09 августа 2008

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

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

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

2 голосов
1 голос
/ 09 августа 2008

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

1 голос
/ 09 августа 2008

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

...