Je peux voir plusieurs problèmes avec ce que vous essayez de réaliser.
1) Comme cela a été mentionné par @Mehrdad, l'assemblage est toujours requis pour les métadonnées, même s'il existe une image native.
2) Une image native n'est valide que sur la machine sur laquelle elle a été compilée. Le compilateur JIT effectue des optimisations qui normalement ne peuvent pas être effectuées car il connaît EXACTEMENT le matériel sur lequel le code devra fonctionner.
3) Même une image native peut être décompilée. C'est juste un peu plus facile de prendre un DLL géré. Pourriez-vous nous dire pourquoi voulez-vous cacher votre code source? A en juger par la rapidité avec laquelle chaque nouvelle version de WGA est piratée, je suppose que si votre logiciel est utile à distance, quelqu'un aura la clé et sur internet (ou p2p ou quoi que ce soit) dans les heures suivant chaque nouvelle version de votre logiciel, et ils vont être les gens qui sont très heureux de démonter une image native. Ou peut-être simplement lire le code de la machine :)
Mon approche personnelle serait de s'assurer que votre application fonctionne bien et est à un prix raisonnable. Les honnêtes gens ne le voleront pas, les malhonnêtes trouveront un moyen, peu importe ce que vous faites. Ultimement, s'ils ont votre application à exécuter il n'y a rien que vous puissiez faire pour contrôler complètement ce qu'ils font avec, même si vous pouvez rendre plus difficile pour eux d'utiliser un réflecteur en utilisant un obfuscateur d'abord, mais à la fin c'est comme la vraie vie En fait, les serrures ne retiennent que les gens honnêtes.
Bien sûr, si vous pouvez déplacer une partie importante des fonctionnalités de votre application du client vers un service Web, vous avez plus de chance. Vous pouvez créer des comptes avec des noms d'utilisateur et des mots de passe pour les clients, l'application le demande lorsqu'elle est exécutée et l'utilise pour s'authentifier auprès du service Web. Si leur utilisation de cette application a expiré, le service Web refuse leur demande.
"Les MS ont des raisons valables de ne pas supporter cela." J'ai entendu ça un peu plus souvent que je le voudrais. Si seulement la SP me permettait de prendre les risques que j'ai envie de prendre, je pourrais quitter le travail un peu plus tôt chaque jour. –
Certaines des raisons sont liées à la sécurité, si elles vous permettent de faire cela, vous pouvez contourner le système de sécurité. Net, maintenant vous pouvez être digne de confiance, mais si vous pouvez contourner le système, les méchants peuvent. – Nir