У меня есть функция C #, которая сохраняет предоставленное изображение в PDF-файл, используя VSTO. Но это бросает:
System.AccessViolationException HResult = 0x80004003
Сообщение = Попытка чтения или записи в защищенную память. Это часто указывает на то, что другая память повреждена. Source = StackTrace:
Я пытался сохранить различными способами: см. Прокомментированный код:
public static Boolean ConvertImageFileToPDF(string imageFileName, string outputFileName, string attachmentName)
{
try
{
Microsoft.Office.Interop.Word.Application wordApp = new Microsoft.Office.Interop.Word.Application();
Microsoft.Office.Interop.Word.Document wordDoc;
wordDoc = wordApp.Documents.Add();
wordDoc.Content.Font.Name = "Arial";
wordDoc.Content.Font.Size = 12;
wordDoc.Content.ParagraphFormat.Alignment = Microsoft.Office.Interop.Word.WdParagraphAlignment.wdAlignParagraphCenter;
wordDoc.Content.Text = attachmentName;
wordDoc.Content.InsertParagraphAfter();
wordDoc.InlineShapes.AddPicture(imageFileName, false, true);
wordDoc.Application.ActiveDocument.SaveAs2(outputFileName, WdSaveFormat.wdFormatPDF);
//wordDoc.SaveAs2(outputFileName, WdSaveFormat.wdFormatPDF);
//wordDoc.SaveAs(outputFileName, WdSaveFormat.wdFormatPDF);
wordDoc.Close();
wordApp.Application.Quit(false);
return true;
}
catch
{
return false;
}
Местоположение сохранения допустимо (простой временный каталог, который используется в другом месте в пределахкод без проблем).
Я искал решения без удачи, кто-нибудь может помочь, пожалуйста?