我从C#应用程序资源中获取了dll,可与该应用程序正常工作,但是当我使用它时,在我的C#代码中出现此错误:
格式错误。 (HRESULT的异常:0x8007000B)
我搜索了错误,这是因为dll的依赖性,所以我使用了Depender Walker来查看它返回的dll的依赖性:
1- kernel32.dll 2- MSVCRT.dll
现在我该如何处理这些依赖关系?
这是我的通话代码
[DllImport("kex.dll", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.Cdecl)]
private static IntPtr XXXFUN(IntPtr bytearray, string strk);
private string cfunction(byte[] keyfile)
{
IntPtr num = Marshal.AllocHGlobal(keyfile.Length);
Marshal.Copy(keyfile, 0, num, keyfile.Length);
return Marshal.PtrToStringAnsi(Form1.XXXFUN(num, "yes"));
}
private void button1_Click(object sender, EventArgs e)
{
string str1 = this.cfunction(Properties.Resources.bytearray);
}