1

0x800401E3 (MK_E_UNAVAILABLE) 错误发生在我的情况下,当 UAC(用户帐户控制)未设置为非限制性“从不通知我”时。

Microsoft.Office.Interop.Word.Application wd = (Microsoft.Office.Interop.Word.Application) System.Runtime.InteropServices.Marshal.GetActiveObject("Word.Application");

发布和安装项目后运行代码时会抛出错误。相反,在编辑器中调试时,一切都很好。

这是由于安全设置或凭据吗?请问如何正确编写这样的代码?

当然,Win Word 已打开,文档也已打开,并且此代码在 UAC 设置为“从不通知我”的情况下一直运行良好。

4

1 回答 1

1

将 word as a service 运行是一项令人讨厌的业务,请参见此处。我经历了很多问题使它工作。我让它工作的方式是在单独的进程中运行它,它只启动一次。主程序通过将命令作为字符串发送到进程的标准输入并等待标准输出上的响应来与进程通信。如果响应没有及时分配,则进程被终止并重新启动

于 2013-04-06T15:09:49.317 回答