Beim Entladen der DLLs werden auch deren Entladeroutinen ausgeführt sofern die
DLL nicht noch anderweitig im Programm benutzt wird. Vielleicht passiert da etwas, was das verursacht.
Dass zu jedem LoadLibrary genau ein FreeLibrary existiert, hast du ja sicher schon sichergestellt, oder? (Das war mein Problem in einer Anwendung einmal.)