(注意:名称和 GUID 已从原始值更改)
在调试应用程序时,我发现我遇到的错误的罪魁祸首可能是在我的应用程序链接的库中,在函数中
pAgent->raw_Open()
agent
在我们的 C++ 代码中声明为
XX::IAgentPtr pAgent
Visual Studio 能告诉我的关于 IAgentPtr 的所有信息就是它的类型是
_com_ptr_t<_com_IIID<XX::IAgent,&_GUID_deadbeef_1234_1234_1234_1234deadbeef> >
而且我的调试器无法进入代码agent->raw_Open()
以查看发生了什么。我想知道哪个 DLL 定义了XX:IAgent
,因为我可能能够获得该 DLL 的调试信息或源代码。
我发现这IAgent
是一个COM接口,通过在别处搜索,我发现我可以通过查看注册表(HKEY_CLASSES_ROOT\CLSID\{guid})找到DLL文件的位置。但是,我在那里找不到我正在寻找的 GUID。
IAgent
鉴于我知道IAgent
的 GUID ,我如何找到包含定义的 DLL ?
(注意:虽然它们的标题相似,但这个问题不是这个问题的重复,因为链接问题的提问者知道定义 GUID 接口的 DLL)