我在项目中使用dll进行板识别。 dll属于第三方公司,我认为是由c ++制作的。 这些行在我的项目中使用:
[System.Runtime.InteropServices.DllImport("kernel32.dll", EntryPoint = "CopyMemory", SetLastError = false)]
public static extern void CopyMemory(IntPtr dest, IntPtr src, uint count);
[System.Runtime.InteropServices.DllImport( "ANPR.dll",CallingConvention = CallingConvention.Cdecl )]
unsafe public static extern short anpr_create(byte instance, char* security_code, byte log_level);
ANPR_API.anpr_create(0, p, 0);
问题是,当我在调试或发布模式下运行我的项目时,一切正常,但是当创建.exe文件并安装在客户端计算机甚至我的计算机上时,就会发生这种情况!
anpr.dll
位于.exe文件旁边的同一文件夹中,但似乎找不到应用程序。
我尝试在systemwow64
,system32
中复制dll,但同样的问题仍然存在。
dll也不用于添加引用或注册regsvr32
。
p.s:我使用Advanced Installer
和VS.2015
发布命令创建了我的.exe文件。