使用 FieldOffSetAttribute,msdn例子[StructLayout(LayoutKind.Explicit)]
public class SYSTEM_INFO
{
[FieldOffset(0)] public ulong OemId;
[FieldOffset(8)] public ulong PageSize;
[FieldOffset(16)] public ulong ActiveProcessorMask;
[FieldOffset(24)] public ulong NumberOfProcessors;
[FieldOffset(32)] public ulong ProcessorType;
}

解决方案 »

  1.   

    你定义一个指针,传入到dll中,如果能返回数据的话,你就可以直接读取指针指向的内存区域,再按照实现约定的数据类型长度读取数据即可。不需要引用dllimport什么的吗
      

  2.   

    不需要引用dllimport什么的吗
    我全都定义的大一些 会不会有问题啊
      

  3.   

    不需要引用dllimport什么的吗VB.NET
     <DllImport("HWTablet.dll", CharSet:=CharSet.Auto, CallingConvention:=CallingConvention.StdCall)>