У меня есть плагин С#, который использует отдельную DLL С++. Единственная ссылка на эту DLL - из самого модуля. Родительское приложение загружает все плагины в свой собственный AppDomain и выгружает этот AppDomain, когда плагин выгружается.
Я проверил, и я определенно вижу падение памяти приложения, когда я выгружаю плагин. Я также могу удалить все загруженные управляемые сборки. Проблема в том, что когда я пытаюсь удалить родную DLL, я просто продолжаю получать Access Denied, пока не закрою все приложение.
Я смотрел на это некоторое время, но я все еще не могу понять, почему именно эта DLL остается в памяти.