使用DLL的C#导致错误-我该如何解决?

时间:2018-11-23 03:30:17

标签: c# dll

我从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);
}

0 个答案:

没有答案