El tipo UnmanagedType que se pasó a DefineUnmanagedMarshal no es un tipo simple. No se puede utilizar ninguno de los siguientes ...

El tipo UnmanagedType que se pasó a DefineUnmanagedMarshal no es un tipo simple. No se puede utilizar ninguno de los siguientes valores: UnmanagedType.ByValTStr, UnmanagedType.SafeArray, UnmanagedType.ByValArray, UnmanagedType.LPArray, UnmanagedType.CustomMarshaler.