首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在TLBIMP-ed dlls之后手动生成ActiveX包装器?

在TLBIMP-ed dlls之后手动生成ActiveX包装器?
EN

Stack Overflow用户
提问于 2009-01-15 09:19:16
回答 1查看 5.7K关注 0票数 3

我有几个需要从C#项目访问的ActiveX组件。

我可以通过Visual Studio的add reference对话框导入它们,这也将自动生成包装器类。(即ABCLibAxABCLib)

我知道我可以通过在每个单独的OCX文件上运行TLBIMP /primary来手动生成主互操作程序集,但是我找不到一种方法来生成ActiveX包装器,除非我通过Visual Studio用户界面这样做。

在.NET SDK中有生成ActiveX包装器的命令行版本吗?

我想从我从TLBIMP手动获得的PIA生成AxABCLib版本。(例如,设置名称空间、输出dll文件名等)有可能吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-01-15 09:25:16

哦..。在查看TLBIMP所属的文件夹后找到的。

它被称为AxImp

C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\AxImp.exe

因此,基本上,要在您自己的自定义命名空间中生成PIA DLL:

  1. 通过运行以下命令为您的ocx注册强名称密钥对

sn -k

  • Run TLBIMP并指定所需的命名空间

在ocx上使用tlbimp abc.ocx /primary /keyfile:abc.snk /out:abc.dll /namespace:MyNamespace

  • Run AXIMP,并使用rcw开关来使用您自己手动生成的PIA。

aximp abc.ocx /source /rcw:abc.dll

这应该就行了。

然而,进口古老的TLB存在一些问题。我还不确定如何解决这个问题。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/446121

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档