0

在我的 Windows 应用程序中,我的数据库中存储了一个 PDF 文件。问题是,当我尝试打开 PDF 文件时,出现错误

Adobe Reader 无法打开“tem1.pdf”,因为它不是受支持的文件类型或文件已损坏

但是当我正常打开这个下载的 PDF 时,它不会给出那个错误。当我尝试通过我的应用程序打开它们时出现错误。

我尝试打开存储在数据库中的 pdf 文件的代码如下:

private void lstBookParts_SelectedIndexChanged(object sender, EventArgs e)
{
        if (lstBookParts.SelectedItems.Count > 0)
        {
            WiCommonFunction.LoadCommonSettings();
            ShowInformation showData = new ShowInformation();
            string item = lstBookParts.SelectedItems[0].Text;
            string book = bookName;
            CalculateCount(book);
            DataSet ds1 = showData.ShowBookPDF(item);
            DataTable dt1 = ds1.Tables[0];
            FileStream FS = null;
            var index = lstBookParts.SelectedIndices;
            Int32 i = (Int32)(index[0]);
            byte[] bytes = (byte[])(dt1.Rows[i]["Content"]);
            string filepath = "D:\\temp1.pdf";
            FS = new FileStream(filepath, System.IO.FileMode.Create);
            FS.Write(bytes, 0, bytes.Length);
            FS.Close();
            Process proc = new Process();
            proc.StartInfo.FileName = filepath;
            proc.Start();
        }
}

通过使用此代码,一些 PDF 文件可以正确打开,而其他文件则会出错。

我怎么解决这个问题?是否需要对代码进行更改?

请为此建议我任何解决方案。

提前致谢。

4

1 回答 1

1

尝试Process.Start

 System.Diagnostics.Process.Start("AcroRd32.exe", "D:/KYC.pdf");

打开你的pdf文件。确保你的机器上安装了pdf阅读器。

参考链接

于 2013-07-25T09:34:02.050 回答