0
我有一个类型库是在Visual C++中创建的,我试图在VBA中调用它的函数。我有两个文件:utility.dll
和utility.tlb
。通过参考文献,我在VBA项目中引用了该库,并浏览至utility.tlb
。但是,当我编译项目,我得到一个错误信息:试图使用类型库,但我得到一个文件未找到错误
File not found: utility.dll
我都放在同一目录中有VBA项目的.XLSM文件都库文件。我想,也许这是一个DLL注册问题,所以我想上运行utility.dll
regsvr32
,并得到了以下错误消息:
The module "utility.dll" may not compatible with the version of Windows
that you're running. Check if the module is compatible with an x86 (32-bit)
or x64 (64-bit) version of regsvr32.exe.
我有机会获得源代码,文件的.sln等为C++项目创建了库文件。
接下来我应该做些什么来使我的VBA项目能够使用此类型库?
改为使用c:\ windows \ syswow64 \ regsvr32.exe。 –
@HansPassant,这给了我关于'可能不兼容'[原文如此]的相同回应。 – sigil
在Visual Studio中转到解决方案属性,然后在Build选项卡上选择您的平台 - 如果它是一个用于64位办公室的64位类库,则选择“x64”作为平台目标而不是任何CPU – 2014-01-17 08:18:54