U E D R , A S I H C RSS

Debugging Seminar_2005/Und Name

DLL 파일의 이름 μ•Œμ•„λ³΄κΈ°

μš”μ•½

DLL νŒŒμΌμ— μ˜ν•΄μ„œ λΆ„μ„λœ λ‚΄μš©μ„ 보면 DLL 에 ν•¨μˆ˜μ˜ 이름이 μ΄μƒν•˜κ²Œ(?) λ³€ν˜•λ˜μ–΄ μžˆλŠ”κ²ƒμ„ ν™•μΈν•˜μ‹€ 수 μžˆλŠ”λ°(DUMPBIN.EXE λΌ ν†΅ν•΄μ„œ κ°€λŠ₯ν•©λ‹ˆλ‹€.) 이 μ΄λ¦„μ˜ μ›ν˜•μ„ μ•Œκ³  μ‹Άμ„λ•Œκ°€ μžˆμŠ΅λ‹ˆλ‹€. κ·ΈλŸ΄λ•Œ undname.exe λΌλŠ” νŒŒμΌμ„ μ‚¬μš©ν•˜μ‹œλ©΄ μ•„μ£Ό μ‰½κ²Œ 확인해 보싀 수 μžˆμŠ΅λ‹ˆλ‹€.
디버깅 μ„ΈλΈλ‚˜μ—μ„œλŠ” μ΄λŸ¬ν•œ ν•¨μˆ˜μ˜ 이름이 컴파일 μ˜΅μ…˜μœΌλ‘œ μ„μ •λ˜λŠ” map νŒŒμΌμ•ˆμ— μ‘΄μž¬ν•˜λŠ” κ²ƒμœΌλ‘œ μ΄μš©ν•˜μ˜€λ‹€. - eternalbleu

λ³Έλ¬Έ

μ•„λž˜μ˜ μ˜ˆμ œμ—μ„œ λ³΄μ‹œλ©΄ ~cpp '?MapDLLappyFunc@@YAPADPAD@Z' λΌλŠ” 이름이
~cpp 'char * __cdecl MapDLLappyFunc(char *)' λΌλŠ” μ•ŒκΈ° μ‰¬μš΄ ν˜•νƒœλ‘œ λ³€ν˜•λ˜μ–΄ μžˆμŒμ„ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.

예제

~cpp 
H:\>undname -f ?MapDLLappyFunc@@YAPADPAD@Z 
Microsoft(R) Windows (R) 2000 Operating System 
UNDNAME Version 5.00.2184.1Copyright (C) Microsoft Corp. 1981-1999 
>> ?MapDLLappyFunc@@YAPADPAD@Z == char * __cdecl MapDLLappyFunc(char *) 
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:23:06
Processing time 0.0083 sec