在VC中链接动态链接库(DLL)的方法

2016-02-19 18:43 4 1 收藏

下面图老师小编要跟大家分享在VC中链接动态链接库(DLL)的方法,简单的过程中其实暗藏玄机,还是要细心学习,喜欢还请记得收藏哦!

【 tulaoshi.com - 编程语言 】

方法一:windows提供了一套函数,用于加载动态链接库中的符号(函数和变量),调用这些函数去加载:

1. HINSTANCE LoadLibrary( LPCTSTR lpLibFileName);

2. FARPROC GetProcAddress( HMODULE hModule,  LPCWSTR lpProcName);

3. BOOL FreeLibrary(  HMODULE hLibModule);

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

这最直观的一种方法,同时也是最麻烦的一种办法。

方法二:让调用者的工程依赖于动态链接库工程。步骤如下:

1. 让调用者的工程处于active状态下。

2. 打依赖设置对话框:Project--dependencies。

3. 选择动态链接库工程。

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

这种方法比较方便,但要求有DLL的项目文件。

方法三:直接把动态链接库产生的.lib文件加入到调用者的工程中。

方法四:进入Link设置:Project--settings--Link,选择Categery中的Input,在object/library modules里输入的动态链接库对应的.lib文件名,在Additional library path中输入动态链接库对应的.lib的路径。

方法五:#pragma (lib, "filename.lilb")

来源:https://www.tulaoshi.com/n/20160219/1618754.html

延伸阅读
标签: Delphi
  10.3.2.2 服务器程序的编写 服务器程序必须包含对 DLL 的调用代码,如: function GetGlobalMem: THandle; far; external 'c:\dlls\glbmem'; 通过调用该函数,服务器可以获得全局内存块的句柄。 在写入数据前,服务器必须锁定全局内存,以避免在写入过程中 Windows 移动该内存块的位置。 函数 Gl...
10.1 Windows的动态链接库原理 动态链接库(DLLs)是从C语言函数库和Pascal库单元的概念发展而来的。所有的C语言标准库函数都存放在某一函数库中,同时用户也可以用LIB程序创建自己的函数库。在链接应用程序的过程中,链接器从库文件中拷贝程序调用的函数代码,并把这些函数代码添加到可执行文件中。这种方法同只把函数储存在已编译的...
标签: Delphi
  10.1 Windows 的动态链接库原理 动态链接库 (DLLs) 是从 C 语言函数库和 Pascal 库单元的概念发展而来的。所有的 C 语言标准库函数都存放在某一函数库中,同时用户也可以用 LIB 程序创建自己的函数库。在链接应用程序的过程中,链接器从库文件中拷贝程序调用的函数代码,并把这些函数代码添加到可执行文件中。这种方法同只...
动态链接库(DLL,即 Dynamic-Link Library)是可执行的模块,但它没有自己的堆栈,必须在调用动态链接库函数的程序环境下运行。动态链接库不仅可以作为一个运行模块,包括函数代码,而且可以包含程序以外的任何数据或资源(位图、图标等等)。动态链接库就是给应用程序提供函数或者资源。 动态链接与静态链接是相对立的。静态链接...
标签: Web开发
1.向项目中添加Jscript文件 //script_1.js----- function doClick1() {     alert("OK1_wufeng"); } //script_2.js----- function doClick2() {     alert("OK2"); } 2.解决方案资源管理器中,右键查看script_1.js和script_2.js的属性,把高级中的“生成操作”属性设置成“嵌入的资源”。 3.向AssemblyInfo.c...

经验教程

241

收藏

26
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部