DLL导入路径C#

本文关键字:路径 导入 DLL | 更新日期: 2023-09-27 18:22:51

我想在C#类中导入我的DLL,但不是这样:

[DllImport(@"C:'Users'user'Documents'Visual Studio 2010'Projects'KeyDll'Debug'DLLWrap.dll", CallingConvention = CallingConvention.Cdecl, EntryPoint = "?DivSet@MyCall@MyFunc@@SAPADPAD@Z")]

我想在项目中找到这样的路径:

[DllImport(@"...'Debug'DLLWrap.dll", CallingConvention = CallingConvention.Cdecl, EntryPoint = "?DivSet@MyCall@MyFunc@@SAPADPAD@Z")]

以便在解决方案所在的本地文件夹中查找。

有什么建议吗??

问候

DLL导入路径C#

您可以简单地使用相对URL,如:

[DllImport("DLLWrap.dll", CallingConvention = CallingConvention.Cdecl, EntryPoint = "?DivSet@MyCall@MyFunc@@SAPADPAD@Z")]

默认情况下,应用程序将在工作目录(本地文件夹)中搜索该文件。

在Winforms中,您可以始终确保它通过使用您的工作目录

[DllImport(Application.StartupPath + "''DLLWrap.dll", CallingConvention = CallingConvention.Cdecl, EntryPoint = "?DivSet@MyCall@MyFunc@@SAPADPAD@Z")]

将DLL的属性编辑为"Content"answers"Copy Always"

将p/Invoke语句中的DLL引用为@"DLLWrap.DLL"