231 Stimmen

Wie man den Inhalt der Windows-Bibliothek (*.lib) sieht

Ich habe eine Binärdatei - eine statische Windows-Bibliothek (*.lib).
Gibt es eine einfache Möglichkeit, die Namen der Funktionen und ihre Schnittstelle aus dieser Bibliothek herauszufinden?

Etwas Ähnliches wie emfar y elfdump Dienstprogramme (auf Linux-Systemen) ?

15voto

jim Punkte 1432

DUMPBIN /EXPORTS erhält die meisten dieser Informationen, und wenn Sie MSDN aufrufen, erhalten Sie den Rest.

Holen Sie sich eines der Visual Studio-Pakete; C++

5voto

Hilton Fernandes Punkte 339

Wie in anderen Antworten zu sehen ist, müssen Sie eine Eingabeaufforderung für Entwickler öffnen, die in Ihrer Version von Visual Studio angeboten wird, um die dumpbin.exe in Ihrem Ausführungspfad. Andernfalls können Sie die erforderlichen Umgebungsvariablen von Hand setzen.

dumpbin /EXPORTS yourlibrary.lib zeigt normalerweise nur eine kleine Liste von Symbolen an. In vielen Fällen werden die Funktionen, die die Bibliothek exportiert, nicht angezeigt.

dumpbin /SYMBOLS /EXPORTS yourlibrary.lib zeigt dieses Symbol an, aber auch eine unglaublich große Anzahl anderer Symbole. Man muss sie also filtern, möglicherweise mit einer Pipe nach findstr (wenn Sie ein MS-Windows-Tool wünschen), oder grep .

Durchsuchen der Static Schlüsselwort, das eines dieser Tools verwendet, scheint ein guter Hinweis zu sein.

4voto

user3292568 Punkte 61

1) Öffnen Sie die Eingabeaufforderung für Entwickler für VS 2017 (oder eine andere Version, die Sie auf Ihrem Computer haben) (Sie finden sie unter: Startmenü --> Alle Programme --> Visual Studio 2017 (oder jede andere Version, die Sie auf Ihrem Computer haben) --> Visual Studio Tools --> Entwickler-Eingabeaufforderung für VS 2017.

2) Geben Sie den folgenden Befehl ein:

dumpbin /EXPORTS my_lib_name.lib

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X