我是 COM 编程新手。我已经准备好了一个 COM 对象(以及关联的 IClassFactory),但我不太清楚如何注册生成的 DLL 以供其他程序使用。我也不清楚需要携带的 GUID 数量。
我尝试注册的 COM 对象实现了 IAudioSessionEvents 接口。
我遇到过 DllRegisterServer 和 DllUnregisterServer 函数,但我还没有找到它们用法的任何清晰演示。它们处理什么键,如何调用它们,通过什么以及何时调用,等等?
Thanks,
-凯文·蒙特罗斯
从这篇文章中我不确定您是否正在实现或使用支持 IAudioSessionEvents 的 DLL。如果您正在使用此 DLL,则可以使用注释行实用程序 regsvr32 注册该组件。注册使用:
regsvr32
取消注册:
regsvr32 /u
regsvr32 应该位于您的路径上,因此该命令可以在任何目录中运行。
如果要实现相关 DLL,则必须提供 DllRegisterServer 和 DllUnRegisterServer 函数的实现。这些函数必须设置和清理组件的注册表项。注册表项的目的是提供 ProgID,将其映射到 CLSID,并为组件支持的接口提供接口 ID。例如,IAudioSessionEvent 的接口 ID。如果您要实现 DLL,则必须提供代码来执行所有这些任务。
注意:这些函数由 regsvr32 调用以注册组件。
如果实际编写此代码非常不寻常,那么通常您会想要使用像 ATL 这样的框架,它会为您处理繁忙的工作。如果您确实想从头开始了解 COM,那么至少编写一次此代码是一个很好的练习。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)