【问题标题】:C++ DLL works from 32 bit Excel VBA, but not when recompiled for 64 bit ExcelC++ DLL 适用于 32 位 Excel VBA,但在为 64 位 Excel 重新编译时不起作用
【发布时间】:2015-11-04 09:37:24
【问题描述】:

使用 Visual Studio 2010 Premium 我构建了一个 32 位和 64 位风格的 c++ DLL,用于从 Excel 2010 Visual Basic 调用。它适用于 32 位 Excel,但对于 64 位 Excel,我得到了可怕的“错误 53,找不到文件”。 DLL 仅包含两个导出的函数,一个函数在 Excel-64 下运行正常,但另一个函数触发错误。依赖沃克没有帮助我。问题应该是缺少依赖,但我不知道它是什么。

【问题讨论】:

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


    【解决方案1】:

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

    要让 Excel VBA 能够加载 DLL,CurDir() 必须设置为包含 DLL 的文件夹,然后才能调用其中的函数,或者整个路径需要在 VBA Declare 语句中。我以为我在通话前更改了 CurDir,但我没有。

    【讨论】:

      猜你喜欢
      • 2017-06-09
      • 1970-01-01
      • 2021-07-31
      • 1970-01-01
      • 2017-03-26
      • 2016-06-04
      • 2013-05-30
      • 2014-08-15
      • 2015-09-17
      相关资源
      最近更新 更多