1.在工具箱中添加Adobe提供的ActiveX控件,如图所示:
在工具箱最下面就会有一个Adobe PDF Reader控件出现,
拖一个Adobe PDF Reader控件到窗体上,双击窗体,在窗体加载时,弹出对话框,加载PDF文件:
如用另一个窗体打开需用到LoadFile来加载PDF显示内容;
例如:
建立一个需要弹出来加载PDF内容的Form3窗体:
public partial class Form3:Form
{
string pdf = string.Empty;
public Form3(string filePath):this()
{
pdf = filePath;
axAcroPdf1.LoadFile(filePath); //axAcroPdf1是PDF控件命名
}
}
窗体Form2的代码为:
Form3 form3 = new Form3(路径 + ".pdf"); //路径为存放PDF文件的路径
form3.show();
每次打开了PDF文件后,关闭的时候就会出现内存错误,暂未找到方法解决!
显示提示以下内容!!!
"0x057a3b11"指令引用的"0x00000004"内存。该内存不能为"read".要终止程序,请单击确定!
--------------------------------------------------------------------------------------------------------------------
解决PDF异常退出方式:
[System.Runtime.InteropServices.DllImport("ole32.dll")]
static extern void CoFreeUnusedLibraries();
private void axAcroPDF1_OnError(object sender, EventArgs e)
{
}
//窗体3正常释放axAcroPDF控件
private void Form3_FormClosing(object sender, FormClosingEventArgs e)
{
if (axAcroPDF1 != null)
{
axAcroPDF1.Dispose();
System.Windows.Forms.Application.DoEvents();
CoFreeUnusedLibraries();
}
}