Comment faire pour charger et décharger, dynamiquement une DLL native de fichier?

J'ai un buggy tiers des fichiers DLL qui, après quelques temps d'exécution, commence à jeter les exceptions de violation d'accès. Quand cela arrive, je veux recharger que fichier DLL. Comment dois-je faire?

Comment à propos du chargement de la dll dans un processus de proxy et de mettre fin à tout le processus? Généralement, un processus est considéré comme rompu après des violations d'accès.
Comment faire? J'ai très peu entendu parler de domaines d'application. Pouvez-vous s'il vous plaît poster un exemple?
Puisque c'est une dll native domaines d'application ne vous aide pas. Vous avez besoin d'avoir un deuxième processus de chargement de la dll, puis utilise une forme d'inter processus communication pour transférer des appels entre les processus. .net remoting peut être un moyen. Mais je n'ai pas fait moi-même.
S'attendant à un nettoyage de décharger et de recharger à partir d'une dll qui a déjà endommagé la mémoire, si bien qu'il jette violation d'accès n'est pas quelque chose que j'aime. La dll perdu la trace de ce qui de son les pointeurs sont toujours valables. Comment faut-il libérer sa mémoire proprement sur décharger?
Violation d'accès erreurs sont fatales dans la nature. Je doute que vous pouvez les attraper à l'aide de try catch gestionnaires et ensuite prendre certaines mesures correctives.

OriginalL'auteur Poma | 2011-06-23