6

クライアントが以前の開発者との橋渡しをしました。残念ながら、私は Web 開発者として .NET フレームワークの経験があまりありません。

編集: 私たちのクライアントは合法的にソフトウェアを所有していますが、ソース コードを要求しませんでした。開発者は私たちのコミュニケーションに応答していません。SO でこの質問をする意図は、法的なアドバイス (それを処理する人がいます) ではなく、逆コンパイルに利用できるオプションについてです。

以前に JetBrains dotPeek で実行可能ファイルを正常に逆コンパイルしましたが、それらはすべて.Net Framework v2.0/v4.5フレームワークを実行しました。現在使用しているクライアントの給与計算実行可能ファイルは.Net Core v4.5、.NET アセンブリ ファイルとして実行した dotPeek、ILSpy、またはその他の C# 逆コンパイル ソフトウェアによって認識されません。

少し調査した結果、.Net Core最近オープン ソース化されたものだと思いますが、逆コンパイル プロセスをどのように進めればよいか、または現時点で可能かどうかさえわかりません。推奨事項はありますか?

注: 「逆コンパイルはできませんが、最初に X、Y、Z を試しましたか?」という行に沿った回答を受け入れます。私たちはタイトなスケジュールを実行しているので、それができるかどうかをクライアントに知らせる必要があります.

私がやったことのいくつかの明確化: program.exedotPeek で開いた、右クリックのプロパティは私にこれを与えています:

ここに画像の説明を入力

「.NET アセンブリ ファイルではありません」と表示されますが、実行可能ファイルを正常に実行できます。

編集:実行可能ファイルからより多くの情報を抽出して、逆コンパイルする別の方法を絞り込むことはできますか?

ここでは、.NET 逆コンパイラは役に立たないと思います。

4

2 に答える 2

7

開発者は、開発 Web サイトで正当なプログラミングの質問をし、十分な知識を持って回答する必要があります。不要な法的助言ではありません。dll を逆コンパイルする正当な理由は多数あります。

ファイルが「.Net Core v4.5」を使用して開発され、MVID がないことを dotnetpeak が示唆する場合、ファイルに CLR ヘッダーがないことが示唆されます。

ファイルを逆コンパイルしてアセンブリに戻すと、ファイルが VB6 で開発されたという識別マーカーが見つかる可能性があります。

優れた VB6 逆コンパイラを見つければ、おそらく問題なくプログラムを逆コンパイルできるでしょう。残念ながら、vb6 をソース コードに完全に逆コンパイルすることはできませんが、アプリケーションがどのように構築されたかをよく理解することができます。

于 2015-01-23T11:08:00.770 に答える
0

.net コア .net のオープン ソース バージョンで、現在進行中の作業です。マイクロソフトの公開 github ページcorefxで日々の進行状況を確認できます。

質問で.netコアが何を意味するのか少し混乱していますが、私の理解では、最終的な.netコア4.5はまだありません。確かに使用可能でありながら不完全ですが、なぜ誰かがそれを本番コードで使用するのでしょうか?

詳細については、このブログ投稿をお読みください

于 2015-01-03T14:07:51.320 に答える