public static byte[] hexencode(byte[] src) { try { IntPtr srcptr = Package.package_packarray(src); IntPtr resptr = Crypt_CSharp.hexencode(srcptr); byte[] buffer = Package.package_unpackarray(resptr); Package.package_freezero(ref srcptr); Package.package_freezero(ref resptr); return(buffer); } catch (Exception ex) { throw; } }
public static byte[] hexencode(byte[] src) { try { IntPtr ptr = Marshal.AllocHGlobal(src.Length); Marshal.Copy(src, 0, ptr, src.Length); Crypt_CSharp.PACKAGE pg; pg.src = ptr; pg.len = src.Length; Crypt_CSharp.PACKAGE res = Crypt_CSharp.hexencode(pg); byte[] buffer = new byte[res.len]; Marshal.Copy(res.src, buffer, 0, res.len); pfree(res); Marshal.FreeHGlobal(ptr); return(buffer); } catch (Exception ex) { throw; } }