Развертывание одного файла? : Я немного не уверен, что это то, о чем вы спрашиваете, но, похоже, вы хотите встроить все dll в один исполняемый файл .NET
Ilmerge.exe : Это не моя область знаний , но есть ответ: Встраивание DLL в скомпилированный исполняемый файл что вы можете проверить. Инструмент Ilmerge.exe - с практическими рекомендациями (см. Также ответ ниже). Макет:
ILMerge.exe /target:winexe /out:All.exe Main.exe one.dll two.dll
Я никогда не использовал это. Я был бы очень удивлен, если бы это работало для всех случаев. Очевидно. Стоит попробовать? Протестируйте объединенный двоичный файл, используя virustotal.com (двоичный файл режима выпуска), чтобы определить, запускаете ли вы какие-либо предупреждения о вредоносном ПО.
Встраивание файла ресурсов : Вы также можете встраивать файлы ресурсов, такие как изображения, HTML-шаблоны и другие вещи, в исполняемый файл .NET, если это то, что вам нужно. Просто самый краткий макет, который я смог найти ( source ):
Добавить файл TestFile.txt
в качестве встроенного ресурса: Project Menu
>> Properties
>> Resources
>> Add Existing file
.
Код Доступ: string queryFromResourceFile = Properties.Resources.Testfile.ToString();
Общий проект : Существует неуловимый « Общий проект » для проектов .NET / типа C #, который компилируется в ваш Основной исполняемый файл во время сборки. Не уверен, когда появился этот тип проекта. Он присутствует в VS2017.
Опция одиночного проекта : Очевидно, что вы также можете переместить все файлы кода в один и тот же проект и таким образом скомпилировать исполняемый файл. Я бы не стал этого делать, если вы не собираетесь постоянно хранить все исходные файлы в одном проекте. Иначе вы получите очень глупый процесс сборки? Я думаю, что все варианты должны быть упомянуты, поэтому мы помним или признаем, почему они плохие.
Дополнительные параметры? : Я уверен, что есть дополнительные параметры. Вероятно, некоторые флаги для компилятора, о которых я не знаю. Пожалуйста, добавьте, если вы знаете что-либо. Нашел этот несколько сумасшедший подход на youtube (настройка ресурсов dll для встраивания в проект Visual Studio, а затем добавление кода для чтения встроенной сборки). Интересно, как антивирусное программное обеспечение судит о последнем? Тест с использованием virustotal.com (бинарный режим выпуска). То же самое касается бинарных файлов, слитых с Ilmerge.exe.
Ссылки