我正在使用用C语言编写的retivision库。我正在尝试将其设为dll文件,以便我的c#程序可以调用这些函数。我浏览了很多线程,但没有一个是关于将这么多文件转换为一个dll。 在c源文件中,某些类型定义如下所示:
typedef struct PartialSegmentTopology{
struct Region black_leaf_regions_head;
struct Region black_leaf_container_regions_head;
struct Region root_regions_head;
}PartialSegmentTopology;
我不知道在哪里插入'__declspec(dllexport)'。
另一个问题是我是否还需要将其插入到实现中(即.c文件)?我的猜测是我只需要在头文件中执行此操作。如果我错了,请纠正我。
感谢任何帮助。
更新:我按照此link生成了我的dll文件。但是当我在我的c#代码中调用该函数时,虽然我将这个dll文件放在正确的文件夹中,但它抛出了DllNotFoundException。(我尝试了bin / Debug和项目文件夹。)