注册COM DLL通过使用VBA(Register com dll for use by vba)

2019-09-16 13:03发布

我有一个非常基本的问题。 我已经开发了一个COM DLL从获取VBA使用。 我的开发机器上的伟大工程。 在一台测试机器我得到的

"error -2147024894 (80070002) Automation Error
System can't find the specified file"

味精当我运行Access应用程序。

当在设计视图中的dll被引用,所有的对象和属性在VBA IDE中显示出来。

我想知道如果我使用了错误的regasm注册DLL? 我开发使用VS 2010在64位计算机上。

我编译DLL中框架3.5在x86上运行。 我应该使用框架V2。 o.50727或框架\ v4.0.30319注册DLL。 我不明白有什么区别。 正在使用的版本通过VS或开发版本,你在编译.NET版本确定的? 用于32位,另一个用于64位呢?

我一直争取这2天,并已取得了一些进展,但无法获得访问例程实际设置在运行时DLL的一个实例。

感谢您的任何援助。

Answer 1:

如果您在V3.5编译,您应该使用regasm。 不过,我想你可能需要添加/ TLB和/基本代码交换机生成,你可以在VBA应用程序使用的类型库。 然后,您可以参考.tlb文件,你应该是金色的。



Answer 2:

您需要注册使用COM DLL regsvr32从VBA引用它。



Answer 3:

VBA使用COM DLL文件。 你将不得不使用C ++,而不是.NET框架。



文章来源: Register com dll for use by vba