C ++ DLL使用32位Excel VBA,但在重新编译64位Excel时则不行

时间:2015-08-12 00:08:59

标签: c++ excel visual-studio-2010 dll 32bit-64bit

使用Visual Studio 2010 Premium我已经构建了一个32位和64位版本的c ++ DLL,用于从Excel 2010 visual basic调用。它适用于32位Excel,但使用64位Excel,我得到了可怕的错误53,找不到文件"。 DLL只包含两个导出函数,一个函数在Excel-64下运行正常,但另一个函数触发错误。依赖沃克没有帮助我。问题应该是缺少依赖性,但我无法弄清楚它是什么。

1 个答案:

答案 0 :(得分:0)

没关系。管理文件夹路径是一个愚蠢的错误。我很清楚,这种事情会导致错误53,但我认为这不是我的问题,但事实确实如此。

要使Excel VBA能够加载DLL,必须在调用其中的函数之前将CurDir()设置为包含DLL的文件夹,否则整个路径必须位于VBA Declare语句中。我以为我在通话前改变了CurDir,但我不是。