我有一个通过 COM/OLE 自动化自动化 Microsoft Word 的小应用程序。
不幸的是,这不适用于 Word 的虚拟化即点即用版本,因为它们在注册表中没有所需的键。(至少不是他们所期望的)换句话说:CreateObject
失败是因为没有注册必要的 COM 类。
有什么方法可以自动化Microsoft Office的即点即用版本?也许一些兼容层?
编辑:我发现只有两页用户/开发人员抱怨这个。要么 OLE 自动化已经过时,要么没有人使用 C2R 版本......
我有一个通过 COM/OLE 自动化自动化 Microsoft Word 的小应用程序。
不幸的是,这不适用于 Word 的虚拟化即点即用版本,因为它们在注册表中没有所需的键。(至少不是他们所期望的)换句话说:CreateObject
失败是因为没有注册必要的 COM 类。
有什么方法可以自动化Microsoft Office的即点即用版本?也许一些兼容层?
编辑:我发现只有两页用户/开发人员抱怨这个。要么 OLE 自动化已经过时,要么没有人使用 C2R 版本......
不幸的是,使用即点即用 Office 版本无法实现自动化。这是由于使用了虚拟化过程。
根据此处的信息,您可以将 C2R 版本切换到 MSI 版本。似乎两个版本的许可证和产品密钥都相同。
我花了几天时间才找到这篇文章来证实我的怀疑。微软真的为任何拥有应用程序的人搞砸了,这似乎取决于自动化。
对于那里的任何谷歌员工,我在我的应用程序中看到的错误是:
由于以下错误,检索具有 CLSID {91493441-5A91-11CF-8700-00AA0060263B} 的组件的 COM 类工厂失败:80040154
我可以通过卸载 Office 即点即用版本并进行完整安装来解决此问题。