typedef struct
{
long SeriaINo; //流水号
UCHAR ValidateTime[7]; //有效期
UCHAR IdentityCard[19]; //身份证号码
UCHAR ICCardNo[13]; //卡编号
UCHAR Name[17]; //姓名
UCHAR gender; //性别
}_Badic_Info;int MakeCard(HANDLE icdev,LPCSTR psddword,_Basic_Info & Basic_Info,
ussigned long&CardSn)用C#该怎么写
{
long SeriaINo; //流水号
UCHAR ValidateTime[7]; //有效期
UCHAR IdentityCard[19]; //身份证号码
UCHAR ICCardNo[13]; //卡编号
UCHAR Name[17]; //姓名
UCHAR gender; //性别
}_Badic_Info;int MakeCard(HANDLE icdev,LPCSTR psddword,_Basic_Info & Basic_Info,
ussigned long&CardSn)用C#该怎么写
public struct struct_Basic_Info
{
public const int vTime = 7;
public const int idCard = 19;
public const int icCard = 13;
public const int name = 17;
/// <summary>
/// 流水号
/// </summary>
public int serialNo;
/// <summary>
/// 性别{男=1,女=0}
/// </summary>
public byte gender;
/// <summary>
/// 卡片有效期限 格式:YYMMDD
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = vTime)]
public string validateTime;
/// <summary>
/// 身份证号码
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = idCard)]
public string IdentityCard;
/// <summary>
/// IC卡号码
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = icCard)]
public string ICCardNo;
/// <summary>
/// 姓名
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = name)]
public string Name;
};[DllImport("QuickDEVCard.dll",CharSet = CharSet.Auto)]
public static extern int MakeCard(int icdev,[MarshalAs(UnmanagedType.LPStr)] string userPassword,ref struct_Basic_Info rec,ref uint cardSN); 为什么成功调用了,但是struct_Basic_Info这里存的数据都是乱码啊