4

DllImport在我的 c# 应用程序中使用。它在我的 windows 7 机器上运行良好,但在 windows 8 上它给出了 DllNotFoundException。

我们的一位客户在他的 Windows 7 机器上遇到了同样的问题。

我什至破解了代码只是为了通过提供绝对路径来测试它

[DllImport("C:\\Program Files (x86)\\MyApp\\A.dll", CallingConvention = CallingConvention.Cdecl)]
private static extern void foo(string filename, MulticastDelegate callback);

但它仍然在路径 C:\Program Files (x86)\MyApp\A.dll ... 处给出 DllNotFoundException。

但是DLL确实存在!!!……

4

1 回答 1

0

路径有空格,所以我的猜测是使用:

[DllImport("\"C:\\Program Files (x86)\\MyApp\\A.dll\"", ...]
于 2014-10-29T14:55:21.627 回答