2008-08-08 3 views
17

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

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

ответ

20

Это одна из печальных причин я все еще таргетинга .NET 2.0 по возможности:/

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

.net 3.5 SP1 Bootstrapper

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

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

5

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

Here is a nice overview.

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

1

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

12

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

Еще больше информации, смотрите здесь: BCL Team blog

1

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

Смежные вопросы