嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 2 元微信扫码支付:2 元
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
using System;
using System.Runtime.InteropServices;
using System.Text;
namespace WeChatFacePay
{
class WxpayFaceSDK
{
// 声明
[DllImport("WxpayFaceSDK.dll", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)]
public extern static int wxpayCallFaceService(IntPtr reqBuf, UInt32 reqSize, out IntPtr pRespBuf, out UInt32 pRespSize);
[DllImport("WxpayFaceSDK.dll", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)]
public extern static int wxpayReleaseResponse(out IntPtr pRespBuf);
// 简单封装
public static int CallWxpayFaceService(string req, ref string resp)
{
byte[] reqBuf = Encoding.UTF8.GetBytes(req);
IntPtr reqPtr = Marshal.AllocHGlobal(reqBuf.Length);
Marshal.Copy(reqBuf, 0, reqPtr, reqBuf.Length);
IntPtr respPtr;
UInt32 respSize;
int ret = wxpayCallFaceService(reqPtr, (UInt32)reqBuf.Length, out respPtr, out respSize);
if (ret == 0)
{
byte[] respBuf = new byte[respSize];
Marshal.Copy(respPtr, respBuf, 0, (int)respSize);
resp = Encoding.UTF8.GetString(respBuf);
wxpayReleaseResponse(out respPtr);
}
Marshal.FreeHGlobal(reqPtr);
return ret;
}
}
}