axacropdflib no problema de fechamento c#
Pergunta
Estou usando um controle AXACROPDFLIB retirado de uma instalação do Adobe Reader 9 para mostrar e imprimir documentos PDF do usuário no meu aplicativo C# Window Forms. Tudo funciona bem até que a appicação feche ...
Ele lança o seguinte erro:
A instrução em "0x0700609c" referenciou a memória em "0x00000014". A memória não pode ser lida
Meu método de formulário é bastante simples e acho que está errado, mas eu não sabia como fazê -lo da maneira certa:
private void Form2_FormClosing(object sender, FormClosingEventArgs e)
{
if (axAcroPDF1 != null)
{
axAcroPDF1.Dispose();
}
}
Agradecemos antecipadamente por qualquer ideia
Solução
Acabei de descobrir como fechar o aplicativo corretamente:
[System.Runtime.InteropServices.DllImport("ole32.dll")]
static extern void CoFreeUnusedLibraries();
private void Form2_FormClosing(object sender, FormClosingEventArgs e)
{
if (axAcroPDF1 != null)
{
axAcroPDF1.Dispose();
System.Windows.Forms.Application.DoEvents();
CoFreeUnusedLibraries();
}
}
Com isso, nenhum erro é lançado: D
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow