社区
进程/线程/DLL
帖子详情
要调用动态库必须要包含头文件吗?
zjfak47
2003-06-24 03:51:12
能不能只用dll和lib文件就能方便的访问动态库?不用LoadLibrary函数,就像调用本文件的函数一样?哪位高手可以做到,小弟一定给分!,不过我好像一次只能给100分。
...全文
2007
22
打赏
收藏
要调用动态库必须要包含头文件吗?
能不能只用dll和lib文件就能方便的访问动态库?不用LoadLibrary函数,就像调用本文件的函数一样?哪位高手可以做到,小弟一定给分!,不过我好像一次只能给100分。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
22 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
daphant
2003-06-28
打赏
举报
回复
如果是COM的DLL肯定可以不用头文件的
如果是动态连接库,我以前用VB就可以直接掉,我想VC不会一定需要头文件吧
Ah
2003-06-28
打赏
举报
回复
人: zjfak47(snoopy) ( ) 信誉:98 2003-06-27 10:37:00 得分:0
Ah(蓝过天)的方法经过试验证明不行。加载类型库出错。我想也不行的。没有人有更好的办法了吗?
==================================================
晕倒!
如果是COM的话绝对是可以的!
如果是纯动态库的话
HANDLE h = LoadLibray(你的dll);
你的函数指针
pfun = GetProcessAdress(h,你的导出函数);
pfun();
就可以了
马老哈
2003-06-28
打赏
举报
回复
头文件里是些声明的信息。如果那些信息你的cpp文件里都有,就没必要用了;如果没有,嘿嘿
xbdj
2003-06-27
打赏
举报
回复
在文件中声明 __declspec(dllimport) void Func();
在连接时把lib文件一同连接就可以了
o_racle
2003-06-27
打赏
举报
回复
NO有其他办法的!!!
zjfak47
2003-06-27
打赏
举报
回复
Ah(蓝过天)的方法经过试验证明不行。加载类型库出错。我想也不行的。没有人有更好的办法了吗?
zjfak47
2003-06-27
打赏
举报
回复
Ah(蓝过天)你说的那个办法对动态库有用吗?那不是调用COM的方法吗?还有就是我的动态库没有使用命名空间,你那个方法如何实现?可不可以说的详细一点?给个例子?谢了!
grey_whp
2003-06-27
打赏
举报
回复
你知道dll中的函数名称和参数就行了,别的什么都不用,loadlibrary就行了
Ah
2003-06-27
打赏
举报
回复
#import "c:\yourdll.dll"
useing namespace yourdllnamespace;
这样就行了
xbdj
2003-06-27
打赏
举报
回复
再加上#pragma comment( lib, "***.lib" )就行了
zjfak47
2003-06-27
打赏
举报
回复
在文件中声明 __declspec(dllimport) void Func();
在连接时把lib文件一同连接就可以了
能不能说的清楚一些?__declspec(dllimport) void Func();我已经声明了。
dev_uoboy
2003-06-27
打赏
举报
回复
静态连接必须要。动态调用可以不要。
不过还是要知道有哪些函数,怎么声明的。
自己写的当然没问题啦
joinrry
2003-06-26
打赏
举报
回复
肯定是要的!
zjfak47
2003-06-26
打赏
举报
回复
我自己写的库,当然知道函数原型了。你用LoadLibrary函数时不也不知道函数原型嘛。
lygfqy
2003-06-24
打赏
举报
回复
其实方式是多样的,各有各的好处,慢慢的就体会了,程序不一定是干净就是好程序
NowCan
2003-06-24
打赏
举报
回复
真是搞不懂,没有头文件,你是怎么知道函数原型的?
o_racle
2003-06-24
打赏
举报
回复
静态链接要包括头文件,动态连接不行,必须LoadLibrary函数!
不能偷懒的!
rivershan
2003-06-24
打赏
举报
回复
调用库,那没办法……
taianmonkey
2003-06-24
打赏
举报
回复
静态链接
就可以不用头文件!
ITCOM
2003-06-24
打赏
举报
回复
包含其头文件,连接其lib文件就行了
加载更多回复(2)
C 语言的
头文件
是
必须
的吗?
N年前学习C语言开始,被老师教导,要记得
包含
头文件
。自己也养成了二话不说#include的习惯。从来没有静下信来想想,C语言必需要有
头文件
吗?
头文件
到底起到什么的作用。 近一段时间做了一些静态库和
动态库
相关的东西,一些内容在上一篇博文中,阅读上一篇博文的看官可以看出,我的静态库和
动态库
都没有对应的
头文件
,可是我的应用程序
调用
了库,没有
包含
头文件
,一样是正常地编译执行。意识到这个问题的时候,我还有一阵恐慌,不知道怎么解释这个现象。因为我们常规都会
包含
头文件
,比如
调用
多线程库,都会 #include 。 对于这个问题,我又做了一些实验算是把这个问题有个初步的理解。当然这个题目起的有点标
Lua 5.2.2 windows平台可执行文件、
头文件
和库文件
我整理和生成的适用于windows平台的Lua5.2.2和混合编程需要的工具,以及我的几个小例子。 Lua官网不提供原生的windosw平台的bin版本,自行编译困难重重。 这里我整理和生成的基于Lua 5.2.2的windows平台开发所需要的文件。 包括: 1,lua解释器,编译器(lua+luac) 2,lua的
动态库
文件(lua52.dll) 3,lua嵌入c/c++需要的
头文件
4,链接dll时用的lib文件(非静态库) 5,几个小例子 6,lua打包exe的工具(glue+srlua) 一点认识: lua是为嵌入其他高级语言而设计的。因而本身功能较弱,而且内核很小。可以异常方便地被C/C++
调用
或者使用C/C++开发可供lua
调用
的函数。 打包方法:命令行下输入glue会有提示,很简单。
VC++动态链接库(dll)编程视频教学
动态链接库的开发编译属于VC++程序员技能。 本课程学习之后能够理解动态链接库原理,学会编译静态库、
动态库
,学会通过lib和
头文件
链接
动态库
,学会直接通过代码访问dll中函数
详解dll
动态库
的开发与
调用
及文件的读写小程序
详解dll
动态库
的开发与
调用
及文件的读写小程序 首先我们先来学习一下
动态库
的
调用
,先找到
动态库
的.dll和.lib文件并将其导入到同源文件相同级别的文件夹下面,然后在添加进其
头文件
,并右击项目处,然后点击链接,链接我们的lib文件(一定要是全名称包括扩展名),然后我们就可以
调用
动态库
的函数了。 Dll是我们具体的函数, lib使我们的函数描述文件。 #include #include /* 该代码是对文件读写操作的使用 */ #pragma warning(disable:4996) #define MAX_DATA_LEN 4096 //进行
Qt 编程 DLL和DLL的3中常见
调用
方法
DLL_CALL1:
调用
dll里的全局函数,使用QLibrary,它封装了loadlibrary和getprocaddress,等 freelibrary 要求: 需要知道dll里函数的原型,来写函数指针。 dll放到一个指定的目录下不一定非exe旁边。 DLL_CALL2:
调用
dll里类的成员函数,使用com的方法(也是QLibrary),gettestdll返回接口的指针。 要求:
包含
dll的
头文件
这样(1、获得对象的函数指针2、接口的原型) dll放到一个指定的目录下不一定非exe旁边。 DLL_CALL2_3:
调用
插件形式dll的方法,使用QPluginLoader。 要求:
包含
头文件
,(插件的接口的原型需要知道,得到接口的指针
调用
函数)。 dll放到一个指定的目录下不一定非exe旁边。 DLL_CALL3: 静态连接的形式,在Qt的项目上右键-》添加库(内部库可能就是本工程内的,外部的就是外面 的??)-》把lib选上ok。 要求: dll
头文件
,有了
头文件
后,可以直接使用dll中的类和dll中的全局函数。但是执行时dll得放到 exe旁边。 dll
必须
放到系统目录或exe旁边。
进程/线程/DLL
15,471
社区成员
49,181
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章