>[DllImport("my.dll")] >public static extern UInt32 dbf_build_recno_list__by_callback(Int32 handle, UInt32 builderRootAddress, [MarshalAs(UnmanagedType.FunctionPtr)] MyClass.myCallback testCallback, [MarshalAs(UnmanagedType.LPStr)] string param); > >[UnmanagedFunctionPointer(CallingConvention.Winapi)] >unsafe delegate bool myCallback(UInt32 handle, UInt32 record, void* pParam); > >unsafe static myCallback cb = (p1, p2, p3) => >{ > return true; >}; > >public MyClass() >{ > string t = ""; > > UInt32 result = dbf_build_recno_list__by_callback(5, 5, cb, t); >} >>
>[DllImport("my.dll")] public static extern UInt32 dbf_build_recno_list__by_callback(Int32 handle, UInt32 builderRootAddress, [MarshalAs(UnmanagedType.FunctionPtr)] MyClass.myCallback testCallback, [MarshalAs(UnmanagedType.LPStr)] string param);To this:
>[DllImport("my.dll")] // Remove public static extern UInt32 dbf_build_recno_list__by_callback(Int32 handle, UInt32 builderRootAddress, [MarshalAs(UnmanagedType.FunctionPtr)] MyClass.myCallback testCallback, [MarshalAs(UnmanagedType.LPStr)] string param);