com - window 服务器 2008 : COM error: 0x800706F7 - The stub received bad data

标签 com windows-server-2008

我正在评估 Server 2008。我的 C++ 可执行文件出现此错误。我在 MSDN 上看到过这个错误,似乎需要对以前的几个操作系统进行热修复。还有人看到这个吗?对于 32 位和 64 位操作系统,我得到了相同的结果。

代码片段:

HRESULT GroupStart([in] short iClientId, [in] VARIANT GroupDataArray,
    [out] short* pGroupInstance, [out] long* pCommandId);

其中 GroupDataArray VARIANT 参数包装了包装 DCAPICOM_GroupData 结构条目的 VARIANT 的单维 SAFEARRAY:
// DCAPICOM_GroupData
[
      uuid(F1FE2605-2744-4A2A-AB85-1E1845C280EB),
      helpstring("removed")
]

typedef struct DCAPICOM_GroupData {
      [helpstring("removed")]
      long              m_lImageID;

      [helpstring("removed")]
      unsigned char     m_ucHeadID;

      [helpstring("removed")]
      unsigned char     m_ucPlateID;
} DCAPICOM_GroupData;

最佳答案

在打开 Microsoft 支持案例后,我现在可以回答我自己的问题。这是(现在)公认的 错误 .该问题与服务器端的编码有关,但在调用服务器代码之前。我们的结构有 6 个字节长,但是这个 COM 实现将它解释为 8 个字节,因此编码失败,这就是您返回的错误。在发布 Service Pack 来处理此问题之前,解决方法是向结构中添加两个额外的字节以将其填充至 8 个字节。我们还没有遇到更多失败的实例,但我们仍然有很多测试要做。

关于com - window 服务器 2008 : COM error: 0x800706F7 - The stub received bad data,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65097/

相关文章:

TortoiseSvn 和 Windows Server 2008 用户账户控制

com - 从 C# 控制台项目中使用 COM 对象

excel - 检索组件的 COM 类工厂失败

c++ - 如何在 C/C++ 代码中使用 HTMLElement 类

c++ - 尝试打开位于 win2k8 共享上的文件时,文件打开最初失败,但最终可以成功

azure - 尝试加入 WinServer 2008R2 上的域,但由于错误 1075 而无法启动 "Workstation service"

c++ - 使用免注册 COM 时 Powershell 无法使用 COM 对象

c# - 在 C# 中获取文件和文件夹的透明外壳图标

powershell - 在 Powershell 中使用自定义用户文件夹创建本地用户

ubuntu - Zabbix 计算项问题