問題描述
我正在嘗試在 Visual Studio 中創建一個能夠訪問已存在的 .dll 文件的應用程序.我需要應用程序來調用例程.我也有一個已經存在的頭文件.
I am trying to create an application in visual studio that will be able to access a .dll file that already exists. I need the application to call up routines. I also have a header file that already exists.
我一直在網上研究,發現我需要創建一個 .lib 文件.在這里查看類似問題時,我找到了一個鏈接:http://support.microsoft.com/kb/131313但是,我無法按照指示進行操作.
I have been researching on the internet and have found that I need to create a .lib file. Looking at similar questions on here I found a link: http://support.microsoft.com/kb/131313 I cannot however follow the directions.
鏈接中的信息說要制作一個 DEF 文件(我在別處讀到這需要編譯為同名的 DLL,但不確定該名稱是什么,與 .dll 文件同名?).但我不明白第一個方向,即使用 DUMPBIN/EXPORTS".然后我需要存根"函數,然后處理 .OBJ 文件(我不知道這些文件是什么).
The information in the link says to make a DEF file ( I read elsewhere that this needs to be compiled as a DLL with the same name, but not sure what that name is, the same name as the .dll file?). But I do not understand the first direction, to 'Use DUMPBIN /EXPORTS'. I then need to 'stub out' functions, and then something to do with .OBJ files (I do not know what these files are).
是否有與上面的鏈接類似的易于遵循的分步說明?
Are there any step-by-step directions, similar to the link above, that are easy to follow?
推薦答案
您將需要 Microsoft Visual C++ 2010 Express(或任何其他 MSVC 命令行工具來源)和您的 DLL.
You're going to need Microsoft Visual C++ 2010 Express (or any other source of MSVC command line tools), and your DLL.
步驟:
dumpbin/EXPORTS yourfile.dll >yourfile.exports
- 將所需函數的名稱從
yourfile.exports
粘貼到新的yourfile.def
文件中.在此文件的頂部添加一行帶有EXPORTS
字樣的行. - 從
VCin
目錄(lib.exe
和其他編譯工具所在的目錄)運行以下命令.
dumpbin /EXPORTS yourfile.dll > yourfile.exports
- Paste the names of the needed functions from
yourfile.exports
into a newyourfile.def
file. Add a line with the wordEXPORTS
at the top of this file. - Run the following commands from
VCin
directory (the one wherelib.exe
and other compile tools reside).
vcvars32.bat
lib /def:yourfile.def /out:yourfile.lib
或用于 x64 構建
lib /def:yourfile.def /machine:x64 /out:yourfile64.lib
您應該生成兩個文件:yourfile.lib
和 yourfile.exp
You should get two files generated: yourfile.lib
and yourfile.exp
這篇關于有.dll文件和頭文件時如何制作.lib文件的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!