namespace FDEP
{
/// <summary>
/// 罗旭成
/// 深证通函数转换
/// </summary>
public class ImportDLL
{
#region * 常量定义
//*****************************************************************
//协议类型常量
//名称 定义值 说明
//MR_PROTOCOLTYPE_MRSTANDAND 0x01 FDEP规定的标识业务协议
//MR_PROTOCOLTYPE_SELFCUSTOM 0xFF 用户自定义协议类型
/// <summary>
/// 协议类型常量
/// </summary>
public const uint MR_PROTOCOLTYPE_MRSTANDAND = 0x01; // SBSP标准业务协议。
public const uint MR_PROTOCOLTYPE_SELFCUSTOM = 0xFF; // 用户自定义协议类型。
//*****************************************************************
//消息标识位常量
//名称 定义值 说明
//MR_MSGFLAG_PERSIST 0x01 持久消息标志,用于可靠传输。目前暂不支持
//MR_MSGFLAG_COMPRESS 0x02 压缩标志,需进行压缩传输
/// <summary>
/// 消息标志位常量
/// </summary>
public const uint MR_MSGFLAG_PERSIST = 0x01; // 持久消息标志,用于可靠传输。
public const uint MR_MSGFLAG_COMPRESS = 0x02; // 压缩标志,需进行压缩传输。
//*****************************************************************
//长度常量
//名称 定义值 说明
//MR_MAXLEN_ADDR 64 用户标识及应用标识的最大长度
//MR_MAXLEN_PKGID 64 消息包标识的最大长度
//MR_MAXLEN_USERDATA 256 用户保留数据的最大长度
//MR_FIXLEN_EXPIREDABSTIME 20 过期绝对时间固定长度
/// <summary>
/// 消息标志位常量
/// </summary>
public const int MR_MAXLEN_ADDR = 64; // 用户标识及应用标识的最大长度。
public const int MR_MAXLEN_PKGID = 64; // 消息包标识的最大长度。
public const int MR_MAXLEN_USERDATA = 256; // 用户保留数据的最大长度。
public const int MR_FIXLEN_EXPIREDABSTIME = 20; // 过期绝对时间固定长度。
//*****************************************************************
//函数返回错误值
//MR_ERRCODE_OK 0
//MR_ERRCODE_PARAMERR -1
//MR_ERRCODE_CONNERR -2
//MR_ERRCODE_TIMEEXPIRED -3
//MR_ERRCODE_TIMEOUT -4
//MR_ERRCODE_NOMSG -5
//MR_ERRCODE_BUFTOOSHORT -6
//MR_ERRCODE_BUFTOOBIG -7
//MR_ERRCODE_SYSERROR -8
#endregion
#region * 结构体的定义
/// <summary>
/// 用来表示一条消息的各种属性
/// </summary>
[StructLayout(LayoutKind.Sequential)]
public struct STUsgProperty
{
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = MR_MAXLEN_ADDR)]
public string m_szSourceUserID;//MR_MAXLEN_ADDR 源用户标识,以“\0”结尾的字符串
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = MR_MAXLEN_ADDR)]
public string m_szSourceAppID;//MR_MAXLEN_ADDR 源应用标识,以“\0”结尾的字符串
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = MR_MAXLEN_ADDR)]
&nb