【问题标题】:DLL Import fails on ESP was not properly saved accross a function call when using aruco V3使用 aruco V3 时,ESP 上的 DLL 导入失败未在函数调用中正确保存
【发布时间】:2020-05-04 08:02:22
【问题描述】:

我正在尝试将 ArUco V3 集成到 Unity 项目中。

因此我创建了一个 .DLL,它作为函数导入:

private static extern void functionName(uint, uint, float, float,float,float,IntPr,float)

头文件中的函数是:

void functionName(unsigned int, unsigned int, float, float, float, float, float const*, float)

我用这种方法调用它:

aruco::Markerdetector 
aruco::Cameraparameters(CalculateCameraMatrix(float, float, float, float), CalculateDistortionCoefficients(float const*), cvSize(uint, uint))

在运行应用程序时,opencv.core 和 opencvimgproc DLL 会不断加载和卸载。

这是参数转换的问题,还是与编译 OpenCV 期间使用的调用修道院有关联。

【问题讨论】:

标签: c# opencv dll dllimport aruco


【解决方案1】:

可以通过将调用约定分别添加到每个dll导入方法来解决问题

 [DllImport("Name", EntryPoint = "EntrypointName", CallingConvention =CallingConvention.Cdecl)]

【讨论】:

    猜你喜欢
    • 2023-03-06
    • 2018-11-28
    • 1970-01-01
    • 2012-04-22
    • 1970-01-01
    • 2011-01-26
    • 2013-07-03
    • 2011-09-17
    相关资源
    最近更新 更多