3

我想从我的 dll 中检索我自己的 dll 的 CSLID。此 CLSID 在我的应用程序的 .rgs 文件中声明。

我正在创建很多 dll,每个 dll 都有不同的 CLSID,对我来说很重要的是我可以轻松地动态检索它。

谁能告诉我该怎么做?

谢谢你。

4

2 回答 2

3

DLL 没有 CLSID,类有。获取特定类的 guid 的一种简单方法是使用它的名称,它是在您使用向导添加类时自动创建的。假设您添加了一个名为“Example”的类,您可以CLSID_Example在代码中使用。另一种方法是使用 __uuidof 关键字,__uuidof(Example)在您的代码中编写,当您使用 #import 指令导入类型库时,该关键字也适用于客户端代码。

于 2013-04-21T14:14:41.507 回答
1
  1. 用于GetModuleFileName获取 dll 的路径 - 运行时获取 DLL 路径
  2. 然后从 typelib 中获取 CLSID - 给定一个 COM DLL,提取所有类 CLSID 和相应的接口名称
于 2013-04-21T08:04:00.510 回答