¿Cómo incrustar librerías DLL en un archivo EXE compilado de C#?
¡Hola a todos! Estoy escribiendo una pequeña aplicación en C# (Windows Forms) que usa una librería de terceros — por ejemplo, Newtonsoft.Json o iTextSharp. Cuando compilo el proyecto en Visual Studio, en la carpeta Debug/Release aparecen mi archivo .exe y un montón de archivos .dll. Esto es incómodo para los usuarios: necesitan asegurarse de que todas las librerías estén junto al exe, de lo contrario el programa no se iniciará.
Quiero hacer que todas las DLL se incrusten directamente dentro de un solo archivo .exe. Es decir, el usuario recibe un solo archivo, lo ejecuta — y todo funciona sin manipulaciones adicionales.
Intenté buscar en Google, encontré ILMerge, pero está obsoleto y no soporta .NET Core / .NET 5+. También escuché sobre Costura.Fody, pero no estoy seguro de cómo configurarlo correctamente. ¿Hay alguna forma moderna de hacer esto en .NET 6/7/8? ¿O tal vez se pueda cargar manualmente las DLL mediante AssemblyResolve? Me gustaría ver un ejemplo funcional, preferiblemente con código.
Aquí hay un ejemplo de la estructura de mi proyecto (aplicación de consola .NET 6):
```
No answers yet.
Inicia sesión para dejar una respuesta