Я искал это, и есть ряд предыдущих ответов, но все они кажутся слишком сложными.Как развернуть консольное приложение C# в виде одного exe?
Я новичок в разработке C# и Windows в целом (предыдущий разработчик Mac).
Я написал простое консольное приложение на C#, используя версию Visual Studio Community. Мое приложение использует две сторонние библиотеки (CommandLineParser и json.NET), добавленные в мой проект с помощью NuGet из VS.
Все, что я хочу сделать, это построить мой проект как отдельный .exe-файл, который можно просто запустить из командной строки, не беспокоясь о том, что конечный пользователь должен установить множество DLL (что-то, что я не использую для работы с новым пользователем Windows). Я понимаю, что конечный пользователь должен иметь установленную платформу .NET. Есть ли идиот-доказательство руководства по созданию одного .exe-файла в моем случае использования?
Я не могу не думать, что это должна быть очень распространенная проблема.
Спасибо.
Это действительно распространено. однако по умолчанию не существует решения по умолчанию. я никогда не нуждался в этом, но я знаю пакет nuget под названием [Fody.Costura] (https://github.com/Fody/Costura), который способен упаковывать ваши зависимости (dll и прочее) в качестве ресурсов в приложение. Другой возможностью будет ILMerge, который в основном делает то же самое – nozzleman
Вы можете проверить это http://stackoverflow.com/questions/189549/embedding-dlls-in-a-compiled-executable – Miguel
Не знаете, какая версия vs you're с помощью. С vs 2013 вы можете использовать ограниченный выпуск installshield (бесплатно), и он отлично справляется с этим. Простой, прямой gui, прямо в vs с управляемым ui. Он будет проверять зависимости, например .net, и устанавливать их на клиенте, если это необходимо, и т. Д. Вы также можете настроить добавление двоичных файлов. В итоге у вас есть папка и setup.exe. – nocturns2