Исключение при преобразовании файлов Office в PDF с использованием ABCpdf.NET на Windows Server 2008 - PullRequest
3 голосов
/ 05 октября 2009

Кто-нибудь был с этим исключением из ABCpdf? Мы работаем на Server 2008 и имеем проблемы только с конвертацией файлов Office (Word и Excel). Все это хорошо работало на Server 2003. Поскольку у нас возникают проблемы только с файлами Office, мне интересно, связано ли это с поддержкой XPS на Server 2008? Код, который вызывает эту функцию, работает как служба Windows.

Private Overloads Function ConvertMicrosoftOfficeDocToPdf(ByVal inputFile As Byte(), ByVal fileExt As String) As Byte()
    Dim abcDoc As WebSupergoo.ABCpdf7.Doc = Nothing

    Try
        abcDoc = New WebSupergoo.ABCpdf7.Doc()

        Dim xro As New WebSupergoo.ABCpdf7.XReadOptions()
        xro.FileExtension = fileExt

        Try
            abcDoc.Read(inputFile, xro)
        Catch ex As Exception
            System.Diagnostics.Trace.Write(ex.ToString())
            Throw ex
        End Try

        Dim fileBytes As Byte() = abcDoc.GetData()
        Return fileBytes
    Finally
        If Not abcDoc Is Nothing Then
            abcDoc.Clear()
            abcDoc.Dispose()
        End If
    End Try
End Function

WebSupergoo.ABCpdf7.Internal.PDFException: Попытка чтения или записи защищена объем памяти. Это часто является показателем эта другая память повреждена. ---> System.AccessViolationException: Попытка чтения или записи защищена объем памяти. Это часто является показателем эта другая память повреждена. на WebSupergoo.ABCpdf7.Internal.NDoc._InvokeMethod (IntPtr inDoc, Int32 inMethod, Int32 inIndex, Int32 inFlags, String inParams, String & outErr) на WebSupergoo.ABCpdf7.Internal.NDoc.InvokeMethod (IntPtr inDoc, Int32 inMethod, Int32 inIndex, Int32 inFlags, String inParams, String & outErr) в WebSupergoo.ABCpdf7.Doc.PrintToXps (String inputFile, String outputFile, Int32 тайм-аут, строка имя принтера) в WebSupergoo.ABCpdf7.Operations.XpsImportOperation.ImportAny (Doc doc, String path, Int32 timeout) в WebSupergoo.ABCpdf7.XReadOptions.ImportXpsAny (Doc док, Строковый путь, Булево очистить) в WebSupergoo.ABCpdf7.XReadOptions.Read (Doc doc, Byte [] data, ReadModuleType модуль) в WebSupergoo.ABCpdf7.XReadOptions.Read (Doc doc, Byte [] data)

Ответы [ 2 ]

3 голосов
/ 06 октября 2009

Добавлена ​​папка под названием «Рабочий стол» здесь:

C: \ Windows \ SysWOW64 \ Config \ systemprofile \

http://social.msdn.microsoft.com/Forums/en/innovateonoffice/thread/b81a3c4e-62db-488b-af06-44421818ef91

0 голосов
/ 22 июня 2010

Актуальная проблема в том, что папка, в которую вы пытаетесь записать файл, дает разрешение на запись в IIS_IUSR. Тогда это должно работать.

...