4

アセンブリにパッチを適用する必要があり、現時点ではソースコードから再構築できません。ildasm mydll.dll /all /out=mydll.ilを使用してILをダンプしてから、ilasm / dll mydll.ilを使用して再構築できます。ファイルのバージョン、公開鍵などがすべて欠落していることを除けば、すべて問題ありません。新しいバイナリ。これらを追加するようにilasmに指示するにはどうすればよいですか?運が悪かったので/mdvスイッチを試しました。

4

1 に答える 1

7

キーは往復しません-そうでなければ、誰かのアセンブリをハックして、オリジナルとして渡すことができます。

状況に応じてアセンブリに署名するには、キーが必要です。アセンブリを逆コンパイルし、パッチを適用します。先に進んで、他のAssmbly属性がある領域に次の行を追加するのが最も簡単です。

.custom instance void [mscorlib]System.Reflection.AssemblyDelaySignAttribute::.ctor(bool) = ( 01 00 00 00 00 ) 

その属性は、ilasmにキー用のスペースを残すように指示します。その属性を追加し、ilasmを使用してコードを再構築したら、snユーティリティを使用して署名を遅らせる必要があります。構文は次のようになります。

sn /R myreassembled.dll originalassemblykey.snk

それは議会を辞任するはずです。

どのファイルバージョンを参照していますか?これはILのアセンブリ属性である必要がありますが、そうでない場合は、al.exeユーティリティが必要になる場合があります。

于 2012-01-06T22:14:51.123 に答える