无法定位程序输入点GdipGetImageGraphicsContext于动态链接库libvlc.dll上 (Dll 转 LIb)

本文主要是介绍无法定位程序输入点GdipGetImageGraphicsContext于动态链接库libvlc.dll上 (Dll 转 LIb),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

我的环境:Win7 X64 + VS2010 + vlc 2.2.1

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

安装好vlc 2.2.1后,在其安装目录有一个文件夹sdk, 里面存放的就是vlc 2.2.1的开发包了,我们将其复制出来使用即可,其它版本的vlc,估计也是如此吧。。。

将vlc开发包放到VS2010创建的工程中,编译Debug版本的程序,调用vlc一切正常,编译Release版本的程序,调用vlc却出现了以下错误:

无法定位程序输入点GdipGetImageGraphicsContext于动态链接库libvlc.dll上

------------------------------------------------------------------------------------------------------------------------------------------------

至于为什么会出现以上错误,现在我也不是很清楚,猜测是vlc开发包中的库文件有问题

libvlc.lib

libvlccore.lib

----------------------------------------------------------------------------------------------------------------------------------------

解决方法:

1. 动态调用vlc函数,即使用以下2个系统API来获取vlc函数地址,然后调用:

LoadLibrary
GetProcAddress
具体如何使用,我就不多说了,百度一下即可。
---------------------------------------------------------------------------------------------------------------------------------------------

2. 既然Debug版本正常,Release不正常,我怀疑是以下2个库文件的问题:

libvlc.lib

libvlccore.lib

既然怀疑是库文件的问题,我们重新创建以上那2个库文件即可。

如何根据dll来创建lib文件,可参考文章:http://bbs.pediy.com/showthread.php?p=1202951

既然工具人家都写好了,我们直接拿来使用即可,后面我会打包该工具,放到vlc开发包中:

(1) 使用工具,创建以下2个def文件

libvlc.def

libvlccore.def

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

有了def文件,就可以根据def文件创建lib文件了,打开cmd,转到vc以下目录,在cmd中,执行文件vcvars32.bat:

D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\

vcvars32.bat

然后敲创建lib库的命令:

link /LIB /DEF:xxx.def /OUT:xxx.lib

link /LIB /DEF:D:\Projects\VS2010\VlcDemo\VlcDemo\vlc-2.2.1\bin\libvlc.def /OUT:D:\Projects\VS2010\VlcDemo\VlcDemo\vlc-2.2.1\bin\libvlc.lib

link /LIB /DEF:D:\Projects\VS2010\VlcDemo\VlcDemo\vlc-2.2.1\bin\libvlccore.def /OUT:D:\Projects\VS2010\VlcDemo\VlcDemo\vlc-2.2.1\bin\libvlccore.lib

---------------------------------------------------------------------------------------

最后就得到我们想要的lib文件了,得到lib文件后,将其替换掉vlc自带的lib文件即可:

终于解决了烦人的:

无法定位程序输入点GdipGetImageGraphicsContext于动态链接库libvlc.dll上

-------------------------------------------------------------------------------------------------------------------------------------------------------------------

文章末尾,提供以上我制作的,可正常使用的vlc开发包下载地址:

vlc-2.2.1-sdk.rar
http://download.csdn.net/detail/friendan/8706993

 

PS:https://download.csdn.net/download/u011430225/10997620

 


--------------------- 
作者:friendan 
来源:CSDN 
原文:https://blog.csdn.net/friendan/article/details/45768843 
版权声明:本文为博主原创文章,转载请附上博文链接!

这篇关于无法定位程序输入点GdipGetImageGraphicsContext于动态链接库libvlc.dll上 (Dll 转 LIb)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/1040926

相关文章

Oracle修改端口号之后无法启动的解决方案

《Oracle修改端口号之后无法启动的解决方案》Oracle数据库更改端口后出现监听器无法启动的问题确实较为常见,但并非必然发生,这一问题通常源于​​配置错误或环境冲突​​,而非端口修改本身,以下是系... 目录一、问题根源分析​​​二、保姆级解决方案​​​​步骤1:修正监听器配置文件 (listener.

MySQL版本问题导致项目无法启动问题的解决方案

《MySQL版本问题导致项目无法启动问题的解决方案》本文记录了一次因MySQL版本不一致导致项目启动失败的经历,详细解析了连接错误的原因,并提供了两种解决方案:调整连接字符串禁用SSL或统一MySQL... 目录本地项目启动报错报错原因:解决方案第一个:第二种:容器启动mysql的坑两种修改时区的方法:本地

python编写朋克风格的天气查询程序

《python编写朋克风格的天气查询程序》这篇文章主要为大家详细介绍了一个基于Python的桌面应用程序,使用了tkinter库来创建图形用户界面并通过requests库调用Open-MeteoAPI... 目录工具介绍工具使用说明python脚本内容如何运行脚本工具介绍这个天气查询工具是一个基于 Pyt

Ubuntu设置程序开机自启动的操作步骤

《Ubuntu设置程序开机自启动的操作步骤》在部署程序到边缘端时,我们总希望可以通电即启动我们写好的程序,本篇博客用以记录如何在ubuntu开机执行某条命令或者某个可执行程序,需要的朋友可以参考下... 目录1、概述2、图形界面设置3、设置为Systemd服务1、概述测试环境:Ubuntu22.04 带图

Python程序打包exe,单文件和多文件方式

《Python程序打包exe,单文件和多文件方式》:本文主要介绍Python程序打包exe,单文件和多文件方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python 脚本打成exe文件安装Pyinstaller准备一个ico图标打包方式一(适用于文件较少的程

VS配置好Qt环境之后但无法打开ui界面的问题解决

《VS配置好Qt环境之后但无法打开ui界面的问题解决》本文主要介绍了VS配置好Qt环境之后但无法打开ui界面的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目UKeLvb录找到Qt安装目录中designer.UKeLvBexe的路径找到vs中的解决方案资源

Python程序的文件头部声明小结

《Python程序的文件头部声明小结》在Python文件的顶部声明编码通常是必须的,尤其是在处理非ASCII字符时,下面就来介绍一下两种头部文件声明,具有一定的参考价值,感兴趣的可以了解一下... 目录一、# coding=utf-8二、#!/usr/bin/env python三、运行Python程序四、

Python使用pynput模拟实现键盘自动输入工具

《Python使用pynput模拟实现键盘自动输入工具》在日常办公和软件开发中,我们经常需要处理大量重复的文本输入工作,所以本文就来和大家介绍一款使用Python的PyQt5库结合pynput键盘控制... 目录概述:当自动化遇上可视化功能全景图核心功能矩阵技术栈深度效果展示使用教程四步操作指南核心代码解析

如何解决yum无法安装epel-release的问题

《如何解决yum无法安装epel-release的问题》:本文主要介绍如何解决yum无法安装epel-release的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录yum无法安装epel-release尝试了第一种方法第二种方法(我就是用这种方法解决的)总结yum

IDEA下"File is read-only"可能原因分析及"找不到或无法加载主类"的问题

《IDEA下Fileisread-only可能原因分析及找不到或无法加载主类的问题》:本文主要介绍IDEA下Fileisread-only可能原因分析及找不到或无法加载主类的问题,具有很好的参... 目录1.File is read-only”可能原因2.“找不到或无法加载主类”问题的解决总结1.File