使用Visual Studio 2010 Premium我已经构建了一个32位和64位版本的c ++ DLL,用于从Excel 2010 visual basic调用。它适用于32位Excel,但使用64位Excel,我得到了可怕的错误53,找不到文件"。 DLL只包含两个导出函数,一个函数在Excel-64下运行正常,但另一个函数触发错误。依赖沃克没有帮助我。问题应该是缺少依赖性,但我无法弄清楚它是什么。
答案 0 :(得分:0)
没关系。管理文件夹路径是一个愚蠢的错误。我很清楚,这种事情会导致错误53,但我认为这不是我的问题,但事实确实如此。
要使Excel VBA能够加载DLL,必须在调用其中的函数之前将CurDir()设置为包含DLL的文件夹,否则整个路径必须位于VBA Declare语句中。我以为我在通话前改变了CurDir,但我不是。