I have found workaround
Enveloppe replace LoadLibrary call with some code if the function xInit above is like this :
void xInit()
{
....
LoadLibrary()
...
if(badtest)
throw CProtectionEngine::Exception();
...
LoadLibrary()
}
It crash in the unwind of call stack when VC90 manage exception and call abort that display the errors
I Think that some LoadLibrary remplaced code by enveloppe ar C++ object so call the throw cause the non call of destructor !
I will move LoadLibrary call to another place to workaround but a Correction patch is need