C++ SDK 集成到 C# 程序中

本文关键字:程序 SDK 集成 C++ | 更新日期: 2023-09-27 18:34:04

我已经开发C#应用程序一段时间了,但是最近我得到了一个需要计算机视觉的项目。因此,我的公司选择为特定的计算机视觉包购买API/SDK的许可证。但是,此 API/SDK 在以下版本中提供:

C++, ActiveX 和基于直接显示的 API/SDK 进行集成。

我的问题是天气C++库以.dll文件或其他形式出现?

如果是这样,有哪些选项可以将 C++ API/SDK 集成到 C# WPF 程序中,以便轻松构建接口并利用其功能? 混合不同语言会被认为是不好的做法吗?

简单地用 c++ 开发整个程序会更容易吗?

C++ SDK 集成到 C# 程序中

C++中有两种类型的库:dll 和 lib。Dll 文件是动态链接的(即仅在运行时需要(,而 lib 文件将被链接为程序的一部分。

该库可能以一个或多个 dll 文件的形式提供,其中包含支持的 lib 文件,以便更轻松地访问方法(否则在使用 c++ 时,您必须手动查找库中的方法(。

要从 C# 使用它们,您有两个选择:生成 C++/CLI 包装器或使用 DllImport 属性导入方法。

包装器方法实际上不能推荐。只有当 c# 和 c++ 之间进行双向通信时,我才会使用它(我的意思不仅仅是将基本参数传递给 c++ 返回基本值(。

DllImport 属性可能是您要查找的。有关这方面的信息可以在 MSDN ( https://msdn.microsoft.com/en-us/library/aa984739%28v=vs.71%29.aspx 中找到(。

你是否想自己编写 c++ 取决于你自己。如果你想创建一个UI,而不是在你自己的代码中做太多性能关键的东西,我会坚持使用C#,让你有宾至如归的感觉;-(