Evitando exceções no desligamento do CLR durante o consumo dos objetos COM criados com /clr
Uma vez que Common Language Runtime (CLR) entrará no modo de desligamento, as funções nativos acesso limitado aos serviços de CLR. Ao tentar chamar a versão em um objeto COM compilado com /clrCLR, faz a transição para o código nativo e faz a transição novamente no código gerenciado para atender à chamada de IUnknown::Release (que está definido no código gerenciado). CLR evita a chamada de novo no código gerenciado desde que está no modo de desligamento.
Para resolver isso, verifique se os destruidores chamados dos métodos de versão contém apenas o código nativo.