2010-03-08 8 views
2

Je crée un projet en C#. D'un autre projet, j'ai 5 DLL.DLL inclure dans exe.file?

Est-il possible d'inclure la DLL dans l'exe, que je donne seulement 1 fichier aux gens et pas x fichiers?

J'ai essayé ILMerge, mais le fichier de sortie jamais ouvert une invite de commande avec l'application - inutile.

Répondre

16

Vous pouvez fusionner les exe et les dll avec l'outil ILMerge.exe

lmerge.exe /out:C:\SomePath\TheOnlyOneExe.exe 
    C:\....\bin\Debug\someexe.exe C:\....\bin\Debug\somedll.dll /t:exe 
+0

Wow, je ne connaissais pas cet outil. Merci pour cela! J'allais répondre que vous pouvez simplement copier les fichiers source dll dans votre programme principal et le compiler comme ça, mais après votre réponse, ça ne vaut plus la peine;) – Blindy

+0

J'ai essayé, mais chaque fois que je démarre la DLL de sortie une invite de commande ouvert avec, est-ce normal? – Kovu

+0

@Kovu Lire les docs -/target: winexe fera ce que vous voulez. –

1

Jetez un oeil à ILMerage

Vous pouvez le télécharger à partir here

1

Je sais que c'est un vieux problème, mais pour tous ceux qui cherchent une réponse, j'ai trouvé le lien suivant utile pour ma situation. Ce qui suit fonctionnera également pour WPF.

http://blogs.msdn.com/b/microsoft_press/archive/2010/02/03/jeffrey-richter-excerpt-2-from-clr-via-c-third-edition.aspx

Cette méthode vous permet d'intégrer dll dans votre assemblée en les ajoutant à votre projet et définissez la propriété Action de génération de ressources intégrées. L'article explique bien cela.

Questions connexes