我正在使用许可库(c ++ dll)来开发c#应用程序。
我没有该库的任何代码,而且这不是clr。
但是我可以使用pInvoke在c#上导入它的方法。
[DllImport("FaceFinding.dll", ExactSpelling = true, CharSet = CharSet.Ansi, CallingConvention = CallingConvention.Cdecl)]
unsafe internal static extern int EnrollmentGalleryDBOneToOne(StringBuilder currentFolderPath);
它在调试模式下完美运行。
但这是问题。
当我制作Visual Studio Installer项目时,我无法在安装程序中导入该dll文件,因为它不是clr。
有没有办法在c#installer项目中导入非clr dll?
答案 0 :(得分:0)
将所有非托管DLL(包括FaceFinding.dll)放在输出文件夹中,安装程序项目的文件系统编辑器中。这样,它们将与您的申请一起发布。
作为旁注,我还建议确保此第三方DLL的许可允许您通过检查其许可协议将其与您的应用程序一起分发。