C#引入QT5环境下生成的DLL用不了,报错是无法加载 找不到指定模块

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#引入QT5环境下生成的DLL用不了,报错是无法加载 找不到指定模块相关的知识,希望对你有一定的参考价值。

用dependency walker查了缺少QT5CORE.DLL LIBSTDC++-6.DLL ,从网上下载后放入debug文件下还是报错

1、 必须为全局函数
2、 函数参数 必须为基本类型,也就是C++ 和C#都有的类型,否则你在public static extern int GetProcAddress(int handle, String funcname);
这里没有办法声明。 其余的 没什么了;追问

你说 是这个DLL文件里的函数都必须是全局函数吗? 可是别人给的这个DLL式封装起来的,我无法看到别人怎么写的,我就是在VS2010里用C#写了一个测试他的程序时 出现错误了,后来用DEpendency walker 发现他依赖了好多DLL

参考技术A 添加引用--浏览,找到下载的dll。追问

这个Dll是c++写的,不能那添加样天假引用 只能[DLLImpotr]

Windows下使用命令行编译Qt项目(解决DLL丢失问题)

一、前言

我之前用Qt做了个hello world,结果各种报错,一大堆DLL找不到,今天用命令行编译就通过了

二、准备工作

1.Visual Studio(有nmake就行)

2.Qt

3.把qmake添加进环境变量(我Qt的安装目录是E:QtQt5.9.0,qmake就在E:QtQt5.9.05.9mingw53_32in)

三、正式开始

首先,准备一个hello world项目

技术图片

 

 我这里为了演示,把.pro文件删了,接着打开vs命令行

技术图片

 

报错,不理他

技术图片

 

 接着切换到项目路径(我这里是D:C++ est)

输入qmake -project

技术图片

 

就生成了.pro文件(建议还是用Qt Creator生成的.pro文件,不然可能会报错)

 技术图片

 

接着输入qmake,生成Makefile文件

技术图片

 

 技术图片

 

最后一步:输入nmake,编译

技术图片

 

 

 

 

 

 打开release文件夹,可以看见如下文件

技术图片

 

 双击即可运行

技术图片

 

 四、补充说明

在Qt Creator中可以直接运行,但是要发布项目的话,得用命令行工具生成,不然有可能报错

 

以上是关于C#引入QT5环境下生成的DLL用不了,报错是无法加载 找不到指定模块的主要内容,如果未能解决你的问题,请参考以下文章

我的C#网站里面为啥生成不了.dll文件啊

QT5 提示:无法启动此程序,计算机丢失Qt5Widgetsd.dll的解决方法

IronPython 将python源码编译成dll,用python调用报错ImportError: dynamic module does not define...

由于找不到qt5gui.dll,无法继续执行代码有影响吗

Qt官方开发环境生成的exe发布方式--使用windeployqt(windeployqt是单独的程序,放在低版本qt4目录下也可以运行的)

QT生成可执行的EXE程序