关闭问题C#的axAcroPDFLib

时间:2009-08-31 22:06:12

标签: c# pdf axacropdf

我使用从Adobe Reader 9安装中获取的axAcroPDFLib控件来在我的C#窗体表单应用程序中显示和打印用户PDF文档。一切正常,直到申请结束......

它会抛出以下错误:

  

“0x0700609c”处的指令   在“0x00000014”处引用了内存。该   内存无法读取

我的FormClosing方法非常简单,我认为是错误的,但我不知道如何以正确的方式做到这一点:

private void Form2_FormClosing(object sender, FormClosingEventArgs e)
    {
        if (axAcroPDF1 != null)
        {   
            axAcroPDF1.Dispose();

        }
    }

提前感谢任何想法

1 个答案:

答案 0 :(得分:11)

我刚刚想出了如何正确关闭应用程序:

    [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(); 
        }
    }

有了这个,没有抛出任何错误:D