Microsoft.Office.Interop.Outlook --> 800700c1 不是有效的 Win32 应用程序



I "一个c# WinForms桌面应用,每天大约有30-50个用户在使用它(通常是在他们轮班的时候)。它所做的事情之一是调用Microsoft.Office.Interop.Word和/或Microsoft.Office.Interop.Outlook,以便打开一个新的Word或Outlook文档,然后在该文档中填充信息。然后用户可以在保存Word文档或发送电子邮件之前手动重写。

对于一个用户来说,他似乎突然不能再让应用程序打开新的Outlook消息了。它抛出了一个异常:

为CLSID为{0006F03A-0000-0000-C000-000000000046}的组件检索COM类工厂失败,由于以下错误:800700c1不是有效的Win32应用程序。(Exception from HRESULT: 0x800700C1).

它引用了我们所做的那一行:前景。应用程序outlook = new outlook .Application();

我在谷歌上搜索了几个小时,试图弄清楚"为什么只有这一个用户?"以及如何修复它。我让他运行了Office 365的"在线修复"软件。特性。我让他试着重新注册Microsoft.Office.Interop.Outlook.dll文件。没有变化。我发现一些文章建议,如果一个项目被设置为"任意cpu"的构建平台目标,可能会导致问题。所以我为这个用户创建了一个特殊的版本设置为"x86"(根据建议)。没有变化。(同时,顺便说一下,应用程序可以切换到Word没有问题!)

我有点不知道下一步该怎么做才能解决这个问题。

任何想法吗?

所以,我的用户决定去确保他更新到最新版本的Windows 10。(尽管企业管理每台设备的Windows更新已有多年。)

但是这样做解决了问题。这确实是操作系统安装问题。

相关内容

最新更新