求助:C#调用c++的dll,字符串传递问题

2025-04-07 18:17:15
推荐回答(1个)
回答1:

C#的定义
public static extern IntPtr run([MarshalAs(UnmanagedType.LPArray)]byte[] uml, [MarshalAs(UnmanagedType.LPArray)]byte[] name);

调用
byte[] buml = new byte[]{};
byte[] bname = new byte[]{};

string a="bcde";
string b="fghijk";
buml = System.Text.Encoding.ASCII.GetBytes(a);
bname = System.Text.Encoding.ASCII.GetBytes(b);

IntPtr intp = run(buml , bname );