Um ponteiro sobreposto ( 1$p) que não estava alocado no heap do GC foi transmitido via PInvoke para a função Win32 '%2$s' ...

Um ponteiro sobreposto (0x%1$p) que não estava alocado no heap do GC foi transmitido via PInvoke para a função Win32 '%2$s' no módulo '%3$s'. Se o AppDomain for fechado, isso causará danos ao heap quando a E/S assíncrona for concluída. A melhor solução é transmitir uma estrutura NativeOverlapped recuperada de uma chamada para System.Threading.Overlapped.Pack(). Se o AppDomain for fechado, o CLR manterá essa estrutura ativa e fixa até a conclusão da E/S.