Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > .NET для новичков > Импорт структуры из с++


Автор: agealex 3.10.2007, 09:54
Есть в dll  на с++ 
Код

typedef struct tDescrRF
{
    ...
} tDescrRF        ;
#define DESCRNUM 5
typedef struct tMsgDevInfo
{
    
    UCHAR N               ;    // количество указателей в массиве
    tDescrRF *Descr[]  ; // вот ее нужно обьявить
} tMsgDevInfo             ;

 а в шарп я ее импортирую
Код

[StructLayout(LayoutKind.Explicit)]
        public struct tMsgDevInfo
        {

            [FieldOffset(0)]
             public byte N;       
            [FieldOffset(1)]
          unsafe  public  tDescrRF**  Descr;// тут я ее обьявляю -но это неправельно
        }


Вопрос в том как ее обьявить?
 smile 

Автор: FREEDEV 3.10.2007, 10:29
Маршаллинг для массива понадобиться
 [MarshalAs(UnmanagedType.LPArray)] 

Автор: agealex 4.10.2007, 09:52
Спасибо уже нашел только подошел
[MarshalAs(UnmanagedType.ByValArray)]  
 и только с параметром 
  [StructLayout(LayoutKind.Sequential)]

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)