查看免注册 COM,我仍然不清楚您是否可以通过添加正确的清单文件来获取任何现有的、完全不知道的 COM 组件 (*( 并以免注册的方式使用它。
这应该在所有情况下都有效吗?
他们正在谈论的公寓东西(comInterfaceProxyStub
(是怎么回事?
(*( : (例如,OCX 文件或另一个进程内 COM 服务器 DLL 应该与regsvr32
一起使用
是的,没问题。 清单仅提供 COM 通常从注册表读取的配置。 因此,术语"无注册表"。为第三方服务器编写一个的典型问题是你不知道 guids。 观察Regsvr32.exe对注册表所做的更改,使用SysInternals的ProcMon或向供应商寻求帮助。
"公寓的东西"只是额外的配置,写入HKLM\软件\类\接口的密钥。 当接口调用需要从一个线程或进程或计算机封送到另一个线程或进程或计算机时,COM 需要。 COM 需要帮助来确定如何将方法参数序列化为互操作通信数据包。 它不知道函数是什么样子的,所以需要代理和存根的帮助。 使用 ProxyStubClsId32 密钥注册的帮助程序 DLL 提供代理和存根实现。 从 IDL 自动生成,或由使用类型库发现函数声明的标准自动化封送器提供。 comInterfaceProxyStub 元素提供该注册的清单版本。