2012-11-17 3 views
0

Je développe une application Windows avec le .NET Framework 2.0. Seules les fonctionnalités requises seront visibles par l'utilisateur.Chargement de DLL sans ajout de référence

La complexité à laquelle je fais face est, certaines fonctionnalités nécessitent des DLL externes. donc je veux que si cette fonctionnalité n'est pas nécessaire à l'utilisateur, les DLL ne doivent pas être déployés dans la machine des utilisateurs.

Une solution que je pensais serait d'utiliser la réflexion pour utiliser les fonctions des DLL sans ajouter de référence et créer 2 projets de déploiement distincts - un avec DLL et l'autre sans.

Quelqu'un peut-il suggérer une autre solution?

Merci

Répondre

0

@Antonio est juste, vous décrivez un système efficace de plug-in.

Vous pouvez utiliser l'une des méthodes Load() sur la classe Assembly tant que vous pouvez vivre avec des assemblages demeurant en mémoire jusqu'à ce que l'application entière soit arrêtée. Si vous avez besoin du scénario plus compliqué de pouvoir décharger l'assemblage pendant l'exécution, this SO question pourrait vous être utile.