7

Adobe Reader 9 インストールから取得した axAcroPDFLib コントロールを使用して、C# ウィンドウ フォーム アプリケーション内でユーザー PDF ドキュメントを表示および印刷しています。アプリケーションが閉じるまで、すべてが正常に機能します...

次のエラーがスローされます。

「0x0700609c」の命令が「0x00000014」のメモリを参照していました。メモリを読み取れませんでした

私の FormClosing メソッドは非常に単純で、間違っていると思いますが、正しい方法で行う方法がわかりませんでした:

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

        }
    }

任意のアイデアを前もって感謝します

4

1 に答える 1

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

于 2009-08-31T22:29:27.770 に答える