ネイティブdllからソースコードを取得するにはどうすればよいですか?リフレクターでは運がありません。
質問する
1125 次
1 に答える
2
それはいけません。
厳密に言えば、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
しかし、ソースコードは?いいえ。
于 2013-02-17T18:56:13.930 に答える