我想用struct作为参数调用非托管c ++程序。
c ++结构如下所示。
typedef union {
BYTE byBuffer[32];
struct {
union {
DWORD dwOptionFlag;
struct {
unsigned BIT_IGNOREEXSTOP : 1;
unsigned BIT_USE_CUSTOMACCDEC : 1;
};
} flagOption;
WORD wCustomAccDecTime;
};
} VELOCITY_OPTION_EX;
c ++中的功能参数文档
int FAS_MoveVelocityEx(
BYTE nPortNo,
BYTE iSlaveNo,
DWORD lVelocity,
int iVelDir,
VELOCITY_OPTION_EX* lpExOption
);
我用于导入dll函数的C#代码
[DllImport("EziMOTIONPlusR.dll")]
public static extern EziServoResult FAS_MoveVelocityEx
(byte nPortNo, byte iSlaveNo, long lVelocity, int iVelDir, out VELOCITY_OPTION_EX lpExOption);
如何从c#中创建与C ++中的VELOCITY_OPTION_EX相匹配的类?
注意:我只有文档+ dll库,它是用c ++编写的。