现在的位置: 首页 > 综合 > 正文

使用VS从DLL中产生LIB文件

2018年06月07日 ⁄ 综合 ⁄ 共 1182字 ⁄ 字号 评论关闭

zero 测试

1. 下载: http://sourceforge.net/projects/gozero/?source=navbar 

          只有头文件 和dll

2. 打开vs命令提示符

3. 输入   C:\Zero>dumpbin /exports zero.dll /out:zero.def

4. 按照下文提取接口,并在首行加上 EXPORTS

5. lib /def:zero.def /out:zero.lib /machine:x86

来自:http://www.coderetard.com/2009/01/21/generate-a-lib-from-a-dll-with-visual-studio/

工具:VS2010, VLC的libvlc.dll

1. 打开工具 Visual Studio Tools command promopt (Start -> All Programs-> Microsoft Visual Studio 2010 -> Visual Studio Tools -> Visual Studio Command Prompt).

2.生成 .def文件,如果Dll文件已经存在对应的.def文件,这一步可以省略。使用dumpbin命令生成对应的.def文件:dumpbin /exports libvlc.dll,显示如下:

创建一个.def文件(我的是 libvlc.def), 编辑该文件,将上述红框内的函数名复制到该文件中,在首行中添加EXPORTS,如下图:


3.生成.lib。使用 visual studio command prompt命令窗口,执行如下命令:

lib /def:libvlc.def /out:libvlc.lib /machine:x86

lib命令说明:

usage: LIB [options] [files]

options:

/DEF[:filename] 

/EXPORT:symbol 

/EXTRACT:membername 

/INCLUDE:symbol 

/LIBPATH:dir 

/LIST[:filename]

/MACHINE:{AM33|ARM|EBC|IA64|M32R|MIPS|MIPS16|MIPSFPU|MIPSFPU16|MIPSR41XX|SH3|SH3DSP|SH4|SH5|THUMB|X86} 

/NAME:filename 

/NODEFAULTLIB[:library] 

/NOLOGO 

/OUT:filename 

/REMOVE:membername 

/SUBSYSTEM:{CONSOLE|EFI_APPLICATION|EFI_BOOT_SERVICE_DRIVER| 

EFI_ROM|EFI_RUNTIME_DRIVER|NATIVE|POSIX|WINDOWS| 

WINDOWSCE}[,#[.##]] 

/VERBOSE

/MACHINE参数必须选择正确的机器类型。

【上篇】
【下篇】

抱歉!评论已关闭.