安防/教育/互联网直播视频组件EasyRTSPServer读取本地文件报错找不到EasyStreamClient.dll解决方法
EasyRTSPServer是一套稳定、高效、可靠、多平台支持的RTSP-Server组件,适用于各种不同行业的手机视频服务需求,以Android手机摄像头为视频源,进行对外的流媒体直播服务输出,且能以Android/Windows作为运行环境,通过二次开发接入各种视频源、桌面源,对外提供源直播服务。
使用EasyRTSPServer读取本地文件,需要引用libEasyStreamClient.dll,但是系统提示错误,找不到EasyStreamClient.dll。
与代码中设置的libEasyStreamClient.dll不符合。
我们查找文件,发现可执行文件同目录下存在对应的libEasyStreamClient.dll文件。
对于#pragma comment(lib,“EasyStreamClient/Win64/libEasyStreamClient.lib”)是导入libEasyStreamClient.lib库文件,以使程序可以调用相应的动态链接库。
这里libEasyStreamClient.lib只是影响编译器编译的时候,link.lib库的问题,和运行时没有任何关系。此时仅仅告诉系统当程序运行时,需要加载这个.dll文件。所以具体运行时,加载的库名是可以通过libEasyStreamClient.lib获取。
通过dumpbin 命令来查看对应的dll
dumpbin /headers libEasyStreamClient.lib
由此可以看到,这个的DLL Name是EasyStreamClient.dll。所以可执行文件运行时,需要的动态库为EasyStreamClient.dll。如果需要引用的是libEasyStreamClient.dll,那需要在编译生成libEasyStreamClient.dll的项目中进行修改。
修改路径:属性->输入->模块定义文件 EasyStreamClient.def
EasyStreamClient.def 中定义了DLL Name
修改后,重新编译libEasyStreamClient即可: