typedef struct  
{
    char CallerCode[32];                 
    char CalleeCode[32];                 
    char RecvDtmf[256];                 
 
    char UserCode[16];                     
    char EventCode[16];                 
    char RegionCode[16];                 
    char EventType[8];                         SYSTEMTIME PickTime;                
}AlertInfo;typedef struct  
{
    int iSize;                     
    ALERTEVENT AlertEvent;             
    WORKMODE wrMode;                 AlertInfo Msginfo;
    char Number1[32];             
    char Number2[32];                      
    char Number3[32];     
    char Number4[32];                         DWORD iCheckSum;                 
}MSGCMD;以上是C++数据结构,我用C#该怎么定义???????????????
转换使用方法如下:
        
private byte[] StructToBytes(object obj)
        {
            int iSize = Marshal.SizeOf(obj);
            byte[] arrayResult = new byte[iSize];
            IntPtr arrPtr = Marshal.UnsafeAddrOfPinnedArrayElement(arrayResult, 0);
            Marshal.StructureToPtr(obj, arrPtr, true);
            return arrayResult;
        }