1

VS 项目选项“注册 COM 互操作”到底有什么作用?因为当我在启用此选项的情况下构建我的库时,我可以在 VS 添加引用屏幕内的 COM 选项卡中查看它。但是,如果我在没有这个的情况下构建然后手动运行 regasm(已经包括 /codebase 参数),我在 COM Dll 列表中看不到它,在 VS 添加引用屏幕或 VB6 引用屏幕中也看不到它。所以,我想知道——VS2010 做了哪些我没有做的事情?

我已经在 StackOverflow 中搜索过这个主题,发现这个链接并没有解决我的问题: “Register for COM Interop”实际上是做什么的?

Regasm 向我显示:类型已成功注册 所以,我没有任何额外信息。

4

1 回答 1

4

Visual Studio 枚举 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Classes\TypeLib 注册表项以填充 COM 选项卡。如果您使用 32 位版本的 Windows,请删除 Wow6432Node。

所以缺少的是您忘记要求 Regasm.exe 注册类型库。您还需要使用 /tlb 选项。

于 2013-08-16T18:13:34.190 回答