IT박스

실행 파일이로드 할 dll을 어떻게 알 수 있습니까?

itboxs 2020. 10. 27. 07:58
반응형

실행 파일이로드 할 dll을 어떻게 알 수 있습니까?


Windows 실행 파일이있는 경우로드 할 dll을 어떻게 알 수 있습니까?

나는 LoadLibrary와 같은 것을 사용하여 동적으로로드 할 수있는 것이 아니라 정적으로로드되는 것에 대해 이야기하고 있습니다.


이 작업을 수행하는 유틸리티가 있습니다.

과거에는 VB와 함께 제공된 MS 도구 (depends.exe)를 사용했습니다. :
https://msdn.microsoft.com/en-us/library/8kche8ah.aspx

그리고 이것도 있습니다 :
http://dependencywalker.com/

그리고 아마도 다른 사람들도 마찬가지입니다.


dumpbin 은 VC ++와 함께 제공되는 도구입니다.

프로그램이 가져올 DLL을 확인하려면 :

  • Visual Studio 열기
  • 메뉴 항목 도구 | Visual Studio 명령 프롬프트
  • 실행 파일을 포함하는 폴더로 cd
  • dumpbin / dependents whatever.exe
Dump of file whatever.exe

File Type: EXECUTABLE IMAGE

  Image has the following dependencies:

    AIOUSB.DLL
    sqlite3.dll
    wxmsw293u_core_vc_custom.dll
    wxbase293u_vc_custom.dll
    KERNEL32.dll
    ole32.dll
    OLEAUT32.dll
    MSVCP90.dll
    MSVCR90.dll

가져올 함수 (및 DLL)를 확인하려면

C:\> dumpbin /imports whatever.exe

명령 프롬프트를 열고 아래 명령을 입력하십시오.

tasklist / m / fi "imagename eq netbeans.exe"

exe 파일 이름에 상관없이 netbeans.exe를 입력하십시오.


명령 프롬프트로 이동하여를 입력 tasklist /m하면 특정 프로그램에서 사용하는 dll 파일 목록이 표시됩니다.


Dependency Walker 는로드 할 .dll을 결정하는 데 도움이 될 수 있습니다.


Microsoft .Net 용 솔루션 :

foreach (AssemblyName a in Assembly.ReflectionOnlyLoadFrom("SAMPLE.EXE").GetReferencedAssemblies()) 
{
    MessageBox.Show(a.Name); 
}

progfr은 간단하고 유용합니다. [ http://members.fortunecity.com/michaelmoser/tip11.htm]


모든 DLL 종속성을 제공하는 NDepend라는 편리한 도구가 있습니다.

참고 URL : https://stackoverflow.com/questions/475148/how-do-i-find-out-which-dlls-an-executable-will-load

반응형