首页 文章

在C中为VB6编写.dll

提问于
浏览
1

我正在尝试将基于VB6的.ocx迁移到C中 . 我正在解决的迁移路径如下:

  • 将当前的.ocx迁移到常规的COM .dll中(它不确定't really have any user interface components, and I'我不知道为什么它仍然是.ocx) .

  • 编写COM .dll的C版本,并将其用作我的替代品 .

我的问题是:

一个 . 这看起来是正确的方法吗?

湾如何在Visual Studio 2010中使用C创建COM .dll?我尝试创建一个简单的.dll,使用tlbexp生成.tlb文件,但这似乎不起作用 . 我可以将我的.tlb拉入VB5项目,但没有实例化的类 . 如果我尝试使用regsvr32注册.dll,我会收到“无入口点”错误 .

我已经看到VS 2005中的一个选项引用“注册COM Interop”,但是我无法在VS 2010中找到相同的选项 .

在此先感谢您的帮助!

1 回答

  • 1

    您必须创建一个ATL项目:
    enter image description here
    然后将COM对象添加到组件 . 您收到的缺失入口点是因为标准dll没有正确的注册入口点,ATL项目会为您执行此操作 .

相关问题