Répondre

1

Non - vous ne pouvez pas inclure statiquement le runtime .NET dans votre propre application

8

Vous pouvez utiliser ILMerge pour fusionner toutes les assemblées en un seul exécutable. Mais vous avez toujours besoin de l'environnement d'exécution du framework installé. Pour transformer votre exécutable en un exécutable natif, jetez un oeil à this question.

0

Je ne suis pas sûr mais il semble que vous vouliez que le framework .NET (ou les parties nécessaires pour votre application) soit inclus dans l'installateur, de sorte qu'il soit 100% autonome, oui? Je sais que les applications ClickOnce peuvent télécharger .NET s'il n'est pas déjà installé, mais cela n'aide pas si vous déployez sur des machines avec une connectivité réseau limitée ou inexistante. Si je comprends bien, vous êtes autorisé à redistribuer le cadre avec votre application:

http://msdn.microsoft.com/en-us/library/xak0tsbd.aspx, mais je ne l'ai jamais fait moi-même.

EDIT: L'exécutable de votre application n'a pas besoin d'être installé avec un programme d'installation (il fonctionnera si vous double-cliquez dessus), mais si vous incluez d'autres fichiers (tels que redistribuable de .NET) alors vous auriez probablement besoin d'une sorte d'installateur.

1

Oui, une application .NET peut être un fichier .exe unique. Vous pouvez écrire uniquement un assembly sans dépendances en dehors du framework .NET, ou vous pouvez combiner plusieurs assembly en un en utilisant ILMerge. Cependant, l'utilisateur aura toujours besoin de la version appropriée du framework .NET. il n'y a pas moyen de contourner cela.

+0

Je ne voulais pas installer le framework .net séparément car cette application est destinée aux machines sans réseau, sans internet et exécutant une version bootable démontable des fenêtres telles que BartPE etc. Son pour diagnostiquer des problèmes de PC? – Belliez

+0

@Belliez: Comme je l'ai mentionné, il semble possible de redistribuer le framework .NET avec votre application. Je ne l'ai jamais fait moi-même mais j'ai vu plus d'infos herE: http://msdn.microsoft.com/en-us/library/xak0tsbd.aspx – FrustratedWithFormsDesigner

+0

@Belliez: Le framework * devra * être installé, mais si vous créer un projet d'installation pour votre application, vous pouvez l'installer automatiquement le cadre pour vous. Vous ne pouvez cependant pas * juste * distribuer un fichier .exe sans le framework; ce n'est tout simplement pas possible. –

0

Il est possible d'empaqueter une application .net dans un fichier exécutable unique en utilisant un concept appelé virtualisation d'application. Ce n'est pas la chose la plus pratique au monde, mais c'est possible.

J'ai écrit plus de détails à ce sujet en réponse à this post.