OLE 错误代码 0x800704ec:此程序被组策略阻止。在 VFP9 中使用 COM

OLE 错误代码 0x800704ec:此程序被组策略阻止。在 VFP9 中使用 COM

系统概要:Windows 域中运行终端服务的 Server 2008 SP2 x86。

我最近将我的工作环境移到了一台新服务器上。我在上面描述的系统上使用 Visual Fox Pro 9 编写代码。我以前在 Windows 2003 终端服务器上工作。自从我移到 2008 服务器后,我遇到了一个让我完全困惑的问题。对于我正在编写的一些程序,我通过 COM 加载 Excel 2007 实例。问题是,我会随机遇到 Excel 实例无法初始化并显示以下错误消息“OLE 错误代码 0x800704ec:此程序被组策略阻止。有关详细信息,请联系您的系统管理员。”。该问题随机发生。似乎存在某种时间因素,因为如果我等待一会儿,问题就会停止,我的程序将再次按预期工作。我也曾幸运地执行过 gpupdate,但这并不能保证它能缓解错误。我确实觉得很奇怪,我总是可以通过 Windows shell 运行 Excel 而不会出现错误。

我迄今已采取的措施如下:

  • 检查应用于域的所有组策略项,以查找可能应用的软件限制。没有任何会影响到我的限制。
  • 实施 GPO 以将我的用户的软件限制设置为不受限制。
  • 验证软件限制是否符合 HKLM 和 HKCU 中的预期
  • 已启用软件限制日志记录。未记录任何阻止。
  • 以管理员身份运行 Visual Fox Pro IDE
  • 将所有相关路径的例外添加到影响我的用户的软件限制 GPO。

尽管如此,我还是没有找到解决办法。我发现唯一可靠的方法是注销然后重新登录服务器。到目前为止,这种方法总能解决问题,直到问题再次出现。到目前为止,我一直将这个问题视为软件限制问题,但目前我对此束手无策。

最后,我将附上错误的屏幕截图以供参考。 OLE 错误代码 0x800704ec

更新:

我发现了一些有趣的信息。我终于在 SRP 日志中找到了一条信息,显示 Excel 被阻止了。我通过 HKCU 配置单元中的 GUID 查找了阻止规则。这又让我困惑了。阻止规则是允许规则!以下是我研究的截图。

SRP 日志显示 Excel 被阻止但又被允许。 SRP 日志显示 Excel 被阻止

阻止规则的 HKCU 注册表值 在此处输入图片描述

组策略中包含的 SRP 规则详细信息 在此处输入图片描述

答案1

我们最近与管理的一家医疗服务提供商遇到了这个问题。他们的患者管理软件具有与 Word 执行“邮件合并”的功能。大约两周后,发生了一次存储故障,需要我们恢复软件数据库的备份,我们接到了他们的电话,报告说他们每次“与 Word 合并”时都会出现此错误:

图像

还生成了 DCOM 事件 10000,每天出现第一个错误(服务器每晚都会重新启动)...

Unable to start a DCOM Server: {000209FF-0000-0000-C000-000000000046}. The error:
"1260"
Happened while starting this command:
"C:\Program Files (x86)\Microsoft Office\Office14\WINWORD.EXE" /Automation -Embedding

他们在组策略中没有设置软件限制。这不是组策略。在尝试了所有方法(包括完全卸载/重新安装 Office 2010 和第三方软件)后,我终于找到了解决方案,至少对我来说是这样...

  1. 打开组件服务(32位),运行:mmc comexp.msc /32
  2. 打开组件服务 > 计算机 > 我的电脑 > DCOM 配置
  3. 右键点击Microsoft Word 97 - 2003 文档并选择特性
  4. 选择安全标签,然后编辑...在下面配置权限
  5. 添加网络服务完全控制. 单击确定。
  6. 在下面身份选项卡,选择交互式用户。申请。确定。

这清除了错误并允许第三方软件成功地将数据发送到 Word。

相关内容