2015-12-07 141 views
1

我正在尝试编写一个C#dll以便在Access VBA应用程序中使用。该DLL工作正常(只)时调用完整的文件路径:找不到dll或依赖关系

Declare Function MyObject Lib "\path\to\my.dll"() As Object 

尽管.dll在同一个文件夹中。

然而,当我从my.dll调用另一个dll(Test.dll)(也在同一个文件夹中)时,问题就出现了。我得到:

error screenshot

我尝试添加的路径,环境变量路径(这让我申报不完整路径my.dll功能),但没有工作...任何帮助将是不胜感激!

+0

路径名有多长? excel将识别的字符数量有限制。 – jdweng

+0

108个字符长。也许这就是问题所在,但它是在没有问题的情况下采用完整路径的初始dll,并且向env vars添加路径应该可以消除我原以为会遇到的问题。 – doovers

+0

你是对的极限。添加环境路径可能会添加几个字符。我已经看到了一些情况,其中开始失败的字符数量因几个字符而异。永远不要弄清为什么它不总是完全相同的数字。 – jdweng

回答

0

在dll上运行depend.exe。如果依赖项缺失,vba声明它不能找到dll。去搞清楚。