解决方案 »

  1.   

    http://www.cnblogs.com/82767136/articles/2517457.html
      

  2.   


    谢谢回帖,我也参考了类似的文章,但还是报函数签名不一致。我猜可能是在c++里的const 参数引起的,但是C#里不能在参数上加Const啊,此处该如何处理?
      

  3.   

    /// Return Type: int
    ///modelName: char*
    ///sID: int*
    ///sModelStepSize: double*
    public delegate int pGetSubEngineID(System.IntPtr modelName, ref int sID, ref double sModelStepSize);/// Return Type: int
    ///StepSize: double*
    public delegate int pGetBaseStepSize(ref double StepSize);/// Return Type: int
    public delegate int pInitDataBus();/// Return Type: int
    public delegate int pReleaseDataBus();/// Return Type: int
    ///modelID: int
    ///opt: int
    ///nID: int
    ///szData: char*
    ///nDataLen: int
    public delegate int pSimDataWrite(int modelID, int opt, int nID, [System.Runtime.InteropServices.InAttribute()] [System.Runtime.InteropServices.MarshalAsAttribute(System.Runtime.InteropServices.UnmanagedType.LPStr)] string szData, int nDataLen);/// Return Type: int
    ///modelID: int
    ///opt: int
    ///nID: int
    public delegate int pSimDataClear(int modelID, int opt, int nID);/// Return Type: int
    ///modelID: int
    ///opt: int
    ///nID: int
    ///szData: char*
    ///nDataLen: unsigned int
    ///nDataSliceNumberMax: unsigned int
    ///nDataSliceNumber: unsigned int*
    public delegate int pSimDataRead(int modelID, int opt, int nID, System.IntPtr szData, uint nDataLen, uint nDataSliceNumberMax, ref uint nDataSliceNumber);/// Return Type: int
    ///modelID: int
    ///opt: int
    ///nID: int
    ///szData: char*
    ///nDataLen: unsigned int
    ///nDataSliceNumberMax: unsigned int
    ///nDataSliceNumber: unsigned int*
    public delegate int pSimDataTake(int modelID, int opt, int nID, System.IntPtr szData, uint nDataLen, uint nDataSliceNumberMax, ref uint nDataSliceNumber);/// Return Type: int
    ///modelID: int
    ///opt: int
    ///nID: int
    ///szData: char*
    ///nDataLen: unsigned int
    ///nDataSliceNumberMax: unsigned int
    ///nDataSliceNumber: unsigned int*
    ///nSec: unsigned int
    public delegate int pSimDataTakeWithWaitCondition(int modelID, int opt, int nID, System.IntPtr szData, uint nDataLen, uint nDataSliceNumberMax, ref uint nDataSliceNumber, uint nSec)