如何从本机dll获取源代码?

如何从本机dll获取源代码?,dll,native,reflector,Dll,Native,Reflector,如何从本机dll获取源代码?没有运气。你不能 严格地说,您也无法获得带有Reflector的托管dll的源代码(例如,没有注释;如果它被禁用,您也将看不到源代码)。NET Reflector非常善于分解MSIL代码 您可以反汇编本机dll,但您不会喜欢它。例如,我试图调试一个非我的代码崩溃: CPU Disasm Address Hex dump Command Comments 20C46D9B |>

如何从本机dll获取源代码?没有运气。

你不能

严格地说,您也无法获得带有Reflector的托管dll的源代码(例如,没有注释;如果它被禁用,您也将看不到源代码)。NET Reflector非常善于分解MSIL代码

您可以反汇编本机dll,但您不会喜欢它。例如,我试图调试一个非我的代码崩溃:

CPU Disasm
Address   Hex dump          Command                                  Comments
20C46D9B  |>  8B4424 14     |MOV EAX,DWORD PTR SS:[LOCAL.1]
20C46D9F  |.  8B40 10       |MOV EAX,DWORD PTR DS:[EAX+10]
20C46DA2  |.  83C0 08       |ADD EAX,8
20C46DA5  |>  8B08          |/MOV ECX,DWORD PTR DS:[EAX]
20C46DA7  |.  3B0F          ||CMP ECX,DWORD PTR DS:[EDI]             ; Crash with EDI=00000008
20C46DA9  |.  75 12         ||JNE SHORT 20C46DBD
20C46DAB  |.  83EE 04       ||SUB ESI,4
20C46DAE  |.  83C7 04       ||ADD EDI,4
20C46DB1  |.  83C0 04       ||ADD EAX,4
20C46DB4  |.  83FE 04       ||CMP ESI,4
20C46DB7  |.^ 73 EC         |\JAE SHORT 20C46DA5
但是源代码呢?没有