C# C语言中的qtdll类#

C# C语言中的qtdll类#,c#,.net,qt5,dllimport,C#,.net,Qt5,Dllimport,我用Qt5.9构建了一个简单的动态库(dll)。现在,我需要将dll功能集成到一个由我的同事开发的工具中,该工具是在Visual Studio C#中开发的。我的问题就从这里开始 我知道Qt(C++)库类不能直接在C#中使用,因为它是非托管代码。但是,如果使用dLimPult,我只会“打包”类本身的单个方法,因为DLL被暴露为C接口,而不是C++(如果我很了解Google在Web上)。 因此,在花了很多时间在web上寻找答案之后,我尝试在Visual Studio中创建一个CLR lirary类

我用Qt5.9构建了一个简单的动态库(dll)。现在,我需要将dll功能集成到一个由我的同事开发的工具中,该工具是在Visual Studio C#中开发的。我的问题就从这里开始

我知道Qt(C++)库类不能直接在C#中使用,因为它是非托管代码。但是,如果使用dLimPult,我只会“打包”类本身的单个方法,因为DLL被暴露为C接口,而不是C++(如果我很了解Google在Web上)。 因此,在花了很多时间在web上寻找答案之后,我尝试在Visual Studio中创建一个CLR lirary类项目,以构建非托管类的C#包装器。问题是,即使我添加了所有包含项和库依赖项(以及它们的路径),我也无法生成此项目,出现链接器错误“LNK1107:无效或损坏的文件:无法在0x318读取C:\Qt5.9\5.9.1\msvc2013_64\bin\Qt5Core.dll”(我添加了Qt5Core.dll,这是我的非托管类中唯一使用的一个,dll被破坏似乎真的很奇怪)

那么,有人有什么建议来解决我的问题吗


谢谢

如果您有链接器错误,请确保包含错误消息的全文。您可以遵循QtSharp的方法,通过CPPSARP,您可能会为您的库获得足够好的绑定。QtSharp不是我们希望采用的方式。您最终找到了解决方法吗?@tunafish24不幸的是,没有,只是以这种方式中止。如果您如果出现链接器错误,请确保包含错误消息的全文。您可以遵循QtSharp的方法,通过CppSharp,您可能会为您的库获得足够好的绑定。QtSharp不是我们希望遵循的方式。您最终找到了解决方法吗?@tunafish24不幸的是,没有,只是以这种方式中止了。