0

我正在开发一个项目,该项目结合了一个用 C 编写的非常大的开源项目 (OSP),并尝试用 C# 构建前端。我目前正在使用 Visual Studio 2012 Express 编译 OSP,并从该项目生成所有 .exe、.dll 等。

我应该如何执行集成?(请记住,我可以完全访问 .h/.c 文件)我尝试使用 IJW(It Just Works)方法,但它似乎不允许我为新编译的 .dll 导入引用。除此之外,我不确定如何在 C# 中执行各种功能(除了向 .exe 发送命令行命令,我不想这样做......)

我需要为 IJW 编译带有特殊选项/参数的 OSP,还是需要重写代码?

4

1 回答 1

2

对于用 C 编写的 DLL,您需要用 C# 编写等效的声明,而不是添加对该 DLL 的引用。

这称为PInvoke

class ABC
{
    [DllImport("abc.dll")]
    public static extern int FuncX(int x, int y);
}
于 2013-08-15T04:47:19.500 回答