bt = strV.ToCharArray(); //这个是要获得char[]数组的
這個改為bt = Encoding.UTF8.GetBytes(strV); 啊
但是他的程序里涌了这个System.Runtime.InteropServices.Marshal.Copy(bt,
0, (IntPtr)data.Telegram, bt.Length); 函数
这里写错了
//byte[] 数组好像只能用这种形式来复制
这里写错了
是要把转换以后的char数组复制到 (IntPtr)data.Telegram里面。所以不能改。
bt = strV.ToCharArray(); //这个是要获得char[]数组的
data.tel_id = 99887;
data.test_data = 99999;
//fixed(byte * t=data.Telegram)
//{
//byte* tempt = t;
System.Runtime.InteropServices.Marshal.Copy(bt,
0, (IntPtr)data.Telegram, bt.Length); //byte[] 数组好像只能用这种形式来复制
而且,我现在测试错误的时候都只发送字符串而已。甚至一个字符。
所以应该没有ascii和其它的问题吧
就是不知道dll内部程序会不会有问题。