У меня есть приложение C # WinForm, в котором (помимо всего прочего) размещается InfoPath FormControl, позволяющий пользователям заполнять некоторые формы.Метод сохранения, предоставляемый в приложении WinForm, помимо сохранения формы XML, также экспортирует форму в формате PDF, чтобы можно было отправить копию PDF по электронной почте.
Все работало хорошо, когда мы использовали InfoPath2007. Поскольку в настоящее время компания обновляет все компьютеры с помощью Office, с 2007 по 2010 год мне нужно обновить приложение для работы с InfoPath 2010. После изменения требуемых ссылок все работало нормально, пока функция сохранения не попыталась экспортироватьФорма в PDF.Код для экспорта формы (который работал ранее при использовании 2007) показан ниже:
this.view.OutputForm.XmlForm.CurrentView.Export(pdfFile, Microsoft.Office.InfoPath.ExportFormat.Pdf);
OutputForm - это объект Microsoft.Office.InfoPath.FormControl.Когда вызывается метод Export, генерируется это исключение:
InfoPath обнаружил ошибку.Операция не выполнена.
InfoPath не может экспортировать форму.Такой интерфейс не поддерживается
в Microsoft.Office.Interop.InfoPath.SemiTrust.View.Export (String bstrURL, String strFormat)
в Microsoft.Office.Interop.InfoPath.SemiTrust.ViewObjectWrapper.Экспорт (String bstrURL, String bstrFormat)
в Microsoft.Office.InfoPath.Internal.ViewHost.Export (String fileLocation, формат ExportFormat) ...
Я не могу себе представитьчто эта функциональность только что была извлечена из размещенного InfoPath 2010 FormControl, не так ли?Я действительно надеюсь, что это не так.
Есть ли здесь какие-либо мастера InfoPath, которые могут указать мне правильное направление (что я пропускаю или альтернативное решение)?
Основано на информации, полученной от Артура Мустафина. Я открытчтобы услышать об альтернативных решениях для создания PDF из формы InfoPath.
Заметка для всех, кто сталкивался с этим, я нашел эту ветку на social.msdn.microsoft.com , где говорится о Брюсе Сонгечто:
... это известная проблема внутренней системы проверки ошибок Microsoft, и группа продуктов пытается ее исправить.