Моя программа оснащена инструментом VSTS VSinstr для сбора информации о покрытии.Но во время работы моих инструментированных двоичных файлов, в частности, одной из моих COM-библиотек, моя программа все время падает на точке выхода.
Я отлаживаю, чтобы выяснить, что причиной сбоя является:
- во-первых, я загружаю COM-библиотеку с помощью coLoadLibrary (bAutoFree = TRUE).
- моя программа выполняет какую-то работу.
- пришла к точке выхода.
- И затем мойCOM dll выгружается.WINDBG указывает, что его DllMain вызывается с помощью dwReason == DLL_PROCESS_DETACH.
- код в моей COM DLL выполняется и вызывает нарушение прав доступа (код c0000005).Что меня смущает, так это то, что в настоящее время значение _AtlModule.m_nLockCnt по-прежнему равно 2!
Есть идеи?