首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

才疏学浅,C#调用C++ dll 返回结构体数组指针

2013-08-09 
才疏学浅,求助,C#调用C++ dll 返回结构体数组指针//C++中定义:struct GPS_TAXI_DATA{int idint equip_id

才疏学浅,求助,C#调用C++ dll 返回结构体数组指针

//C++中定义:
struct GPS_TAXI_DATA
{
int id;
int equip_id;
double cross_x;
double cross_y;
string gps_date;
double speed;
int direct;
int status;
int acc;
string rece_date;
};


_declspec(dllimport) GPS_TAXI_DATA * get_gps_data(int year,int month,int day,int hour,int min,int sec,int &GPS_Arry_Num);


C#中:
        
[StructLayout(LayoutKind.Sequential)]
        public struct GPS_TAXI_DATA
        {
            [MarshalAs(UnmanagedType.I4)]
            int id;
            [MarshalAs(UnmanagedType.I4)]
            int equip_id;
            [MarshalAs(UnmanagedType.I8)]
            double cross_x;
            [MarshalAs(UnmanagedType.I8)]
            double cross_y;
            [MarshalAs(UnmanagedType.LPStr)]
            string gps_date;
            [MarshalAs(UnmanagedType.I8)]
            double speed;
            [MarshalAs(UnmanagedType.I4)]
            int direct;
            [MarshalAs(UnmanagedType.I4)]
            int status;
            [MarshalAs(UnmanagedType.I4)]
            int acc;
            [MarshalAs(UnmanagedType.LPStr)]
            string rece_date;
        };




        [DllImport(@"C:\Documents and Settings\jiangbinze\桌面\test\test.dll", EntryPoint = "get_gps_data")]


        public static extern GPS_TAXI_DATA[] get_gps_data(int year, int month, int day, int hour, int min, int sec, ref IntPtr GPS_Arry_Num);
public void test()
{
//这里该怎么写?
}




才疏学浅,C#调用C++ dll 返回结构体数组指针才疏学浅,C#调用C++ dll 返回结构体数组指针
[解决办法]
GPS_TAXI_DATA data = get_gps_data(xxx,xxx,xxx,xxx)

热点排行