动态链接库(dll)文件的动态调用(使用动态链接库,解析Wis文件--测井数据文件的一种)
2024-10-21 10:09:54
在画出井眼轨迹后,老师又给了三口井的数据,不过这次给的数据是WIS格式的,可以使用一个动态链接库进行解析,解析结束后会生成一个固定格式的txt文件,然后再读取txt文件,画井眼轨迹。
学长给了一个可以将wis文件转化成txt文件的动态链接库(dll)及其头文件。在网上搜资料的时候,看到有两种情况:有lib文件、头文件和dll文件;只有dll文件。但是我有的是头文件和dll文件。。。后来我才发现,我这种属于后一种情况:只有dll文件。
头文件的作用只是告诉我,链接库里的函数是怎么声明的,这样我在动态加载链接库的时候就可以知道,怎么去找函数了。下面是我的实现过程。
typedef void (*Func)(char *inName, char *outName);//我这里实现的是读入wis文件,输出txt文件
HMODULE hDll = LoadLibrary(L"WisReader.dll");//加载dll文件
if(hDll != NULL)
{
qDebug()<<"sucess"<<endl;//测试是否读取成功
Func ReadWis;
ReadWis = (Func)::GetProcAddress(hDll,"ReadWis");//找到dll文件里的实现函数
ReadWis("xxxx.wis","xxxx.txt");调用
(Func)::FreeLibrary(hDll);//卸载链接库
}
第一种情况的话,网上有很多教程和对三个文件的解释。
最新文章
- MRC迁移ARC之__block
- 简述id,instancetype和__kindof的区别
- phalcon: queueing使用心得,需要安装相应的软体
- 如何通过Visual Studio发布Azure应用程序
- linux ftp 搭建和相关问题解决
- 沙湖王 | 用K-均值聚类给女明星们的身材分分类
- poj3667(线段树)
- sklearn.model_selection 的 train_test_split作用
- 163邮箱 SMTP发送邮件注意点
- 常用的数组函数-S
- C# 木马功能的简单实现
- Java Web之JSP
- SpringBoot(十二):springboot2.0.2写测试用例
- HTML5语音合成Speech Synthesis API简介
- python中Flask模块的使用
- 15.unbuntu下安装vmware-tools
- 学习Junit资料
- Java中对比两个对象中属性值[反射、注解]
- TScreen 类
- 验收测试与UI