如何从C程序生成用于c#项目的DLL

本文关键字:项目 DLL 用于 程序生成 | 更新日期: 2023-09-27 18:13:03

我需要使用C为c#项目制作的程序,为此我需要在Visual Studio 2013中生成DLL,有人有任何教程或知道如何做到这一点吗?我想做一个DLL的结构和读/写函数在C,干杯伙计们。

如何从C程序生成用于c#项目的DLL

必须使用p/invoke。我认为这在这里经常被讨论。从c#程序中访问DLL中的方法

DLL对于您正在做的事情可能是多余的。你可以写一个C程序,然后用CDecl调用它。问题是你需要知道很多。如果你只是想在一个性能关键部分快速遍历数组,你最好在c#中使用结构体,在你的方法上加上不安全,然后使用指针和地址来做你想做的事情。看起来像C/c++的代码在c#中是完全合法的。

参见此处的参考:MSDN:不安全指针

还找出了一个有点过时的参考资料,展示了如何调用visual c Runtime printf函数作为示例。请记住,当你需要给函数一个指针,当你需要读取偏移量等来传递结构体时,事情会变得非常困难。您需要锁定传递到方法中的任何内容,以阻止垃圾收集器移动它,这也会影响性能。

MSDN: CDecl p/Invoke example