繁体   English   中英

在访问非托管C / C ++ dll函数时将C结构转换为C#结构时遇到问题

[英]Facing issue converting C structure to C# structure while accessing unmanaged C/C++ dll function

我如何使用interopservices将C结构转换为C #结构以将其作为参数发送给非托管dll函数。

C结构

typedef struct {
   unsigned int opt,
   NDVAL val,
   byte type
} NDGETVAL; 

typedef union    
{    
int i,    
bool b,    
float f,    
char *t,    
} NDVAL
  Converted c stracture to c#


      [StructLayout( LayoutKind.Explicit )]
       struct NDVAL
     {
       [FieldOffset( 0 )]
       int i;
       [FieldOffset( 0 )]
       bool b;
       [FieldOffset( 0 )]
       float f;
       [FieldOffset( 0 )]
       IntPtr t;
    }

    class NDGETVAL
    {
      uint opt;
      NDVAL val;
     byte type;
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM