Windows 라이브러리(*.lib)의 내용을 표시하는 방법
Windows 스태틱 라이브러리(*.lib)라는 바이너리 파일이 있습니다.
그 라이브러리에서 함수와 인터페이스의 이름을 찾을 수 있는 간단한 방법이 있나요?
비슷한 것emfar
그리고.elfdump
유틸리티(Linux 시스템)
정적 라이브러리라고 가정하면DUMPBIN /SYMBOLS
에 라이브러리의 기능과 데이터 개체를 나타냅니다.Import Library에 대해 말하는 경우(a).lib
DLL에서 내보낸 기호를 참조하기 위해 사용됨)을 선택하면DUMPBIN /EXPORTS
.
"C" 이진 인터페이스와 연결된 함수의 경우 값, 매개 변수 또는 호출 규칙을 반환하지 않습니다.이 정보는 암호화되어 있지 않습니다..lib
올바르게 호출하려면 미리(예: 헤더 파일의 프로토타입을 통해) 알아야 합니다.
C++ 바이너리인터페이스에 링크된 함수의 경우 호출 규칙 및 인수는 내보낸 함수의 이름으로 인코딩됩니다('이름 망글링'이라고도 합니다). DUMPBIN /SYMBOLS
는 디코딩된 파라미터 세트뿐만 아니라 "descled" 함수 이름을 모두 표시합니다.
Visual Studio 명령 프롬프트 열기
dumpbin /ARCHIVEMEMBERS openssl.x86.lib
또는
lib /LIST openssl.x86.lib
또는 7-zip으로 열기만 하면 됩니다. :) 이것은 AR 아카이브입니다.
저는 이런 도구를 원했습니다.ar t libfile.a
unix 로 표시됩니다.
Windows에 상당하는 것은lib.exe /list libfile.lib
.
"dllbin -dll"은 dll로 동작하지만 lib로 동작하지 않을 수 있습니다.lib에는 "dumpbin -linkermber" 또는 "dumpbin -linkermber:1"을 사용할 수 있습니다.
LIB.EXE는 VS의 라이브러리입니다.
http://msdn.microsoft.com/en-us/library/7ykb2k5f(VS.80).aspx
(Unix의 libtool 등)
DUMPBIN /EXPORTS 그 정보의 대부분을 취득하고 MSDN을 누르면 나머지가 취득됩니다.
Visual Studio 패키지 중 하나(C++)를 가져옵니다.
1) VS 2017 개발자 명령어프롬프트를 엽니다(또는 머신에 설치되어 있는 모든 버전). ([시작] 메뉴 --> 모든 프로그램 --> Visual Studio 2017 (또는 머신에 설치되어 있는 모든 버전) --> Visual Studio Tools --> VS 2017 개발자 명령어프롬프트를 엽니다).
2) 다음 명령을 입력합니다.
dumpbin /EXPORTS my_lib_name.lib
다른 답변에서 볼 수 있듯이 Visual Studio 버전에서 제공되는 개발자 명령 프롬프트를 열어야 사용할 수 있습니다.dumpbin.exe
실행 경로에 있습니다.그렇지 않으면 필요한 환경 변수를 수동으로 설정할 수 있습니다.
dumpbin /EXPORTS yourlibrary.lib
을 사용법대부분의 경우 라이브러리가 내보내는 기능이 표시되지 않습니다.
dumpbin /SYMBOLS /EXPORTS yourlibrary.lib
할 .아마도 로 필터링을 해야 합니다. 아마도 파이프로findstr
툴이 ) (MS-Windows 툴)grep
중Static
이러한 툴 중 하나를 사용하는 키워드가 좋은 힌트인 것 같습니다.
언급URL : https://stackoverflow.com/questions/305287/how-to-see-the-contents-of-windows-library-lib
'programing' 카테고리의 다른 글
Bash mkdir 및 하위 폴더 (0) | 2023.04.24 |
---|---|
FormBuilder 제공자 없음 (0) | 2023.04.24 |
그림자가 퍼지거나 흐릿해지는 것을 제어하는 방법 (0) | 2023.04.24 |
system.management를 참조합니다.visual studio의 automation.dll (0) | 2023.04.24 |
CSV Excel 파일 C# 작성 방법 (0) | 2023.04.24 |