none
c# 调用c++ dll 提示尝试读取或写入受保护的内存 RRS feed

  • 问题

  • [DllImport("HDWheelDllTwo.dll", EntryPoint = "?SetWorkStatus@CHDlib@@QAEXHHNH@Z", CharSet = CharSet.Auto,CallingConvention=CallingConvention.Cdecl)]
    //public static extern void SetWorkStatus(Int32 nDiameter, Int32 nWorkStatus, double dPSI, Int32 nLModel);也是一样的
    public static extern void SetWorkStatus(int nDiameter,int nWorkStatus, double dPSI,int nLModel);
    在这样调用的时候 SetWorkStatus(1200, 1, 100,1);报“尝试读取或写入受保护的内存,这通常指其他内存已损坏”错误,c++函数原型为:
    void SetWorkStatus(int nDiameter,int nWorkStatus,double dPSI,int nLModel);

    help me,thanks^

    • 已编辑 lcawen 2012年12月7日 0:50
    2012年12月7日 0:37

答案

全部回复