InfoPath 2007ファイルをサービスからプログラムでどのように開きますか?
-
08-07-2019 - |
質問
WindowsサービスからプログラムでInfoPath 2007ファイルを開こうとしていますが、次のエラーが表示されます:
System.Runtime.InteropServices.COMException (0x80043000):InfoPathは開くことができません 次のファイル:C:\ path \ datafile.xml。 十分なストレージが利用できません この操作を完了します。
このファイルは、InfoPathデザイナーで正しく開きます。また、WinFormsアプリケーションとしてプログラムで実行されます。しかし、Windowsサービスとして実行しようとすると、爆発します。
私は強力なGoogleに相談しました。返される2つの主な結果は、不正な形式のXML(フォームが手動で正しく開かれるため、原因ではない)またはデータベースにアクセスしようとすること(私はやっていない)です。
これを行う方法を知っている人はいますか?サービスに設定する必要がある権限はありますか?
更新:
Andersのリクエストによると、コードは次のとおりです。これは、最初に質問を投稿した6か月前に作業していた正確なコードではない場合があることに注意してください。それ以来、XtraReportsの使用に移行しました。これは、作業がはるかに簡単で、これらの不可解なエラーが少ないためです。ただし、この質問を解決して、回答が必要になる可能性のある他のユーザーについて解決したいと思います。
Microsoft.Office.Interop.InfoPath.Application infoApp = new Microsoft.Office.Interop.InfoPath.Application();
try
{
Microsoft.Office.Interop.InfoPath.XDocument xDoc = null;
xDoc = infoApp.XDocuments.Open(fileName, (int)Microsoft.Office.Interop.InfoPath.XdDocumentVersionMode.xdUseExistingVersion);
xDoc.PrintOut();
infoApp.XDocuments.Close(0);
}
catch (Exception ex)
{
//handle error here
}
finally
{
try
{
if (infoApp != null)
infoApp.Quit(false);
}
catch { }
}
所属していません StackOverflow