Состояние Компоновщиков для приложений.NET (иначе “Сэр, май у меня есть Компоновщик” выпуск 2009 года),

Попробуйте:

^Service\.\w*LT\w*\.fix\.log$

70
задан 19 revs, 2 users 99% 9 August 2010 в 22:33
поделиться

8 ответов

Случай Моно Компоновщика.

Я не могу говорить очень о других частях программного обеспечения, которые перечислены здесь, но как автор Моно Компоновщика, я могу сказать то, что оно делает и что оно не делает.

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

Существует Моно. Клон слияния ILMerge, но это не завершено, и его автор не поддерживает его. Генерировать собственную программу, содержащую и Моно время выполнения и блоки, Моно, обеспечивает mkbundle инструмент.

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

Я записал несколько сообщений в блоге о компоновщике:

О нашем опыте с Компоновщиком. Компоновщик в настоящее время используется в двух частях Моно проекта. Это используется для генерации блока, который мы распределяем для людей для встраивания нашего компилятора C#, Mono.CSharp.dll. Можно следить за презентацией Miguel в PDC, который описывает, как мы делаем это. Это довольно просто, и это - основное использование Компоновщика, который является настраиваемым инструментом, и довольно легко записать пользовательские шаги для него.

Более сложное использование Компоновщика является способом, которым мы создаем наши блоки При луне. Так как лунный свет является нашей реализацией Silverlight, блоки являются подмножеством настольных блоков. Таким образом, мы связываем наши настольные блоки для сокращения их размеров и использования пользовательских шагов, мы преобразовываем общедоступный API для соответствия Silverlight.

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

49
ответ дан Jb Evain 24 November 2019 в 13:31
поделиться

Моно FWIW

имеет , имел компоновщика долгое время.

Вот пример из как использовать mkbundle.

5
ответ дан Community 24 November 2019 в 13:31
поделиться

Это - основное, о котором я слышал давным-давно на Скалах.NET. Я никогда действительно заставил изменение испытывать его хотя

http://www.remotesoft.com/linker/

2
ответ дан Jacob Adams 24 November 2019 в 13:31
поделиться

Никогда не использовал его, но я услышал, что можно сделать подобные вещи с Реактором.NET

2
ответ дан Lurker Indeed 24 November 2019 в 13:31
поделиться

http://www.xenocode.com/

Это - то, что мы используем. До сих пор, после года или к несколько ограниченного использования (возможно, 500 установок в дикой природе), обнулите проблемы.

И это довольно по умеренной цене. У них есть некоторое более дорогое полное программное обеспечение виртуализации (который связывает Ваше приложение другими приложениями и даже O/S). Но нам не было нужно все это. Наша стоимость приблизительно один год назад составляла 400$. Я думаю, что это немного более дорого теперь, но намного меньше, чем Thinstall.

И у них есть большие демонстрации, которые можно загрузить, как IE 8. Никакая установка не требуется.

5
ответ дан Clay Nichols 24 November 2019 в 13:31
поделиться

Клиентский профиль регистрируется в Windows, но специальным способом, так как Вы не хотите путать машину только с клиентским профилем с машиной с полным .net 3.5

Клиентский профиль:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\DotNetClient\v3.5\Install 

Полный .net 3.5:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5\Install
3
ответ дан Nir 24 November 2019 в 13:31
поделиться

Я обсуждал (под моим псевдонимом "г-н Analogy") потребность в компоновщике на форуме Joel некоторое время, прежде чем он написал ту статью. Быстрое увеличение компоновщиков, кажется, выровняло по ширине мое беспокойство (печально).

http://www.thinstall.com/

От людей я говорил, это довольно хорошо расценивается, хотя в последний раз я проверил, что лицензирование было тягостно ($2 тысячи / год на приложение, лицензирующее). Они, кажется, предназначаются для отделов ИТ, а не коротковолнового разработчика. То, что Вы не можете найти оценку на их сайте, предлагает (мне), что это дорого.

2
ответ дан 2 revs 24 November 2019 в 13:31
поделиться

Существует большая статья о CodeProject, который говорит о некоторых "компоновщиках" и как они работают.

http://www.codeproject.com/KB/dotnet/internals_native.aspx

0
ответ дан Dana Holt 24 November 2019 в 13:31
поделиться