У меня был такой же сбой, как и раньше, и, как указывает JS, это означает, что dll была выгружена до сбоя.Однако наличие трассировки стека в этой dll может не обязательно дать вам информацию, необходимую для диагностики проблемы.
Что-то в вашем коде выгружает библиотеку, потому что она думает, что с ней покончено, но у вас все еще есть указатель на нее (или на функцию внутри нее) где-то.Мое предположение будет обратным вызовом, возможно, из другого потока.Я бы посоветовал поискать в вашем источнике любые звонки на FreeLibrary()
, а также поставить точку останова на символе FreeLibrary
.Узнайте, куда выгружается библиотека, а затем убедитесь, что все данные, которые ссылаются на dll, были сброшены.Используйте мьютекс, если у вас несколько потоков.
Инструмент, который может быть очень полезен для этого, - отличный Process Monitor , который, я думаю, показывает вам события загрузки и выгрузки dll и даст вамтрассировка стека для каждого.