サービス(Windows サービス)を通じて Microsoft Word インスタンスにアクセスしようとしていますが、次のエラーが発生します。
操作を利用できません (HRESULT からの例外: 0x800401E3 (MK_E_UNAVAILABLE))
Word 文書を開きました (タスク マネージャーに WINWORD.EXE も表示されます)。VS 2010 と MS Office 2003 を使用しています。コードは次のとおりです。
Dim fs As New FileStream("D:\log.txt", FileMode.OpenOrCreate, FileAccess.Write)
Dim sw As New StreamWriter(fs)
sw.BaseStream.Seek(0, SeekOrigin.End)
Dim wordapp As Word.Application
wordapp = Marshal.GetActiveObject("Microsoft.Office.Interop.Word.Application")
For Each doc As Word.Document In wordapp.Documents
sw.WriteLine(doc.FullName.ToString() + "\n" +
doc.ActiveWindow.WindowState.ToString())
Next
sw.Flush()
sw.Close()
このコードを Windows Forms アプリケーションで使用すると、完全に機能しますが、Windows Service では機能しません。何故ですか?Windows サービスはサポートしていませんMicrosoft.Office.Interop
か? それが機能する場合は、助けてください?