Y a-t-il un moyen de libérer un objet auquel on a accédé en utilisant la liaison tardive (c'est-à-dire créé par la méthode Activator.CreateInstance()
)?Publication d'un objet à liaison retardée dans C#
J'ai une application qui transforme les fichiers d'un format à un autre. Les assemblys qui effectuent ces traductions résident dans un dossier de mon répertoire d'applications. Lorsque l'application démarre pour la première fois, je peux supprimer ces assemblys du dossier de traduction sans aucune erreur. Cependant, une fois que je traite un document via l'application (et que je me suis lié à l'un des assemblages de traduction en utilisant la liaison tardive), je ne peux plus supprimer les assemblages de traduction. À ce stade, je reçois un message d'erreur indiquant que le fichier est "utilisé par une autre application".
Existe-t-il un moyen de "libérer" l'objet lié en retard dans mon application une fois que j'ai fini de l'utiliser?
double possible [C# - Chargement .NET Assembly dans Separate AppDomain Vous pouvez donc videz-] (http: // stackoverflow.com/questions/1228554/c-loading-net-assembly-into-seperate-appdomain-so-you-can-unload-it) –