Я хочу вызвать неуправляемую программу на С ++ со структурой в качестве параметра.
Структура 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
);
код C #, который я использую для импорта функции dll
[DllImport("EziMOTIONPlusR.dll")]
public static extern EziServoResult FAS_MoveVelocityEx
(byte nPortNo, byte iSlaveNo, long lVelocity, int iVelDir, out VELOCITY_OPTION_EX lpExOption);
Как создать класс из c #, который соответствует VELOCITY_OPTION_EX в c ++?
Примечание: У меня есть только документация + библиотека dll, и она написана на c ++.