axAcroPDFLib alla chiusura del problema C#
Domanda
Sto utilizzando un controllo axAcroPDFLib tratto da un'installazione di Adobe Reader 9 per mostrare e stampare documenti PDF dell'utente all'interno della mia applicazione Window Form C#.Tutto funziona bene fino alla chiusura dell'applicazione...
Genera il seguente errore:
L'istruzione a "0x0700609C" ha fatto riferimento a "0x00000014".La memoria non può essere letta
Il mio metodo FormClosing è abbastanza semplice e penso che sia sbagliato, ma non sapevo come farlo nel modo giusto:
private void Form2_FormClosing(object sender, FormClosingEventArgs e)
{
if (axAcroPDF1 != null)
{
axAcroPDF1.Dispose();
}
}
grazie in anticipo per qualsiasi idea
Soluzione
Ho appena capito come chiudere correttamente l'applicazione:
[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();
}
}
con questo non viene generato alcun errore :D
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow