产品编号: #1423
windows动静态链接库 新品
产品编号: #1423
购买学习
讲师介绍
专业讲师
资深导师
经验丰富的专业讲师
课程介绍
了解课程详细内容和学习目标

本课程为 Windows 平台 C/C++ 进阶专项课程,需具备 C/C++ 基础(函数、指针、内存管理)及 Windows 编程基础(API 调用、VS 开发环境),不重复基础语法教学。课程聚焦 “Windows 库开发实战”,从技术原理到工程应用全覆盖,既解析底层逻辑(如函数名修饰、入口点参数),也落地实战场景(如跨语言调用、资源封装),是 Windows 应用开发者从 “单体开发” 向 “模块化开发” 过渡的关键课程,为后续大型 Windows 项目(如桌面应用、插件开发)奠定工程化基础。
课程核心内容
课程导入与静态链接库开发
核心目标:掌握静态库的创建、调用、原理与调试,解决代码复用与模块化问题。
免费课时 1-10:课程介绍,编译过程解析,库的概念与动静态库区别,静态库项目创建、生成与调用(含相对路径、包含目录设置),静态库使用原理(代码合并机制);
课时 11-27:附加依赖项配置,x86 与 x64 架构兼容性分析,静态库嵌套调用,lib 工具应用(list/extract/remove 指令),C 与 C++ 函数名修饰规则(undname 工具解析),extern "C" 跨语言调用解决方案,静态库调试方法。
动态链接库开发与调用
核心目标:掌握动态库的创建、显式 / 隐式加载、调用逻辑,理解 DLL 与可执行文件的关联机制。
课时 28-41核心内容:动态库项目创建与生成,显式加载(LoadLibrary、GetProcAddress、FreeLibrary),HMODULE 与字符串类型(LPCWSTR/LPCSTR)详解,GetLastError 错误排查,隐式加载(导入库配置、.def 文件符号定义),显式 / 隐式加载异同对比,导入库生成与符号重命名(.def 文件应用)。
工具应用与底层原理
核心目标:掌握 Windows 库开发必备工具,深入理解 DLL 入口点函数与进程 / 线程机制。
工具应用(课时 42-46):dumpbin 工具详解(25 个指令测试,如查看导出符号、文件头信息),lib 工具进阶,editbin 工具基础;
入口点函数(课时 47-59):DllMain 函数原理与参数解析(fdwReason、lpvReserved),进程 / 线程状态触发(DLL_PROCESS_ATTACH/DETACH、DLL_THREAD_ATTACH/DETACH),信号触发机制,入口点返回值影响,线程创建与 DLL 交互逻辑。
进阶应用与资源封装
核心目标:解决 DLL 数据共享、调试与工程化问题,掌握纯资源型 DLL 开发,实现资源复用。
数据共享与调试(课时 60-67):全局 / 静态变量共享机制,.def 文件数据共享配置,跨库内存申请与释放问题,DLL 调试技巧;
模块绑定与工具进阶(课时 68-82):函数转发器应用,Release 与 Debug 版本差异,DLL 基地址设置(批量配置),模块绑定(bind 工具、BindImageEx),editbin 工具指令全解析(堆栈设置、子系统配置);
DLL 相关 API(课时 83-92):SetDefaultDllDirectories、AddDllDirectory 等路径配置 API,模块句柄与路径获取,LoadLibraryEx 进阶参数,资源型 DLL 标记;
纯资源型 DLL(课时 93-100):资源型 DLL 创建,字符串、位图、快捷键、光标、图标、菜单资源的加载与使用,汉化思路与问题处理
