能否在Qt中使用C# DLL?

5
我正在编写一个使用 c# sdk 的程序。这个程序的功能将被用于一个更大的由 QtCreator 编写的 c++ 程序中。我想创建一个 c# dll 与 sdk 交互,然后在 c++ 程序中使用它。有人做过类似的事情吗?可以指导我一下吗?
非常感谢。
1个回答

4
您可以在工作中经常这样做。您可以使用COM和Interop从C++中消耗C#。值得注意的是,这全部都是Windows系统。

如果您以前没有在C++中使用过COM,则可能会遇到一些麻烦。它相当令人不愉快。

这是一个非常大的主题,所以我无法在文章中详细介绍,但如果您想了解更多信息,请从C++方面开始查看此处:

COM(C++)编程教程?

我建议您使用ATL来使您的COM生活变得更加轻松。

编辑:实际上我不知道这一点,但Qt支持COM,因此您最好使用它-请参阅https://doc.qt.io/qt-5.10/activeqt-index.html

在C#方面进行Google搜索,但主要是关于在您的类上使用ComVisible和Guid属性使其准备好使用COM,然后使用regasm.exe(.NET Framework的一部分)进行注册。


1
很好,将Qt方面的任务添加到您的答案中。 - Mohammad Kanan
谢谢,我没有意识到Qt有ActiveX/COM支持,所以添加了一个链接到Qt文档。 - Richard Matheson
1
这是我能找到的最有帮助的地方。非常感谢。 - MutantKeyboard

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接