2

ソース コードが利用できなくなった C# プロジェクトを支援するよう依頼されました。幸いなことに、プロジェクトの難読化されていないデバッグ ビルドが利用可能であるため、Reflector で実行したところ、再構築されたソース コードはほとんど問題ないように見えます。

私が質問している奇妙なことが1つあります。明らかに文字列であるはずのいくつかのオブジェクトは、次のようになります。

string str7 = new string();
str7.Value = strArray3[k];

現在、string にはパラメーターなしのコンストラクターも Value プロパティもありません。インスタンス化を削除して .Value プロパティを削除するだけで、おそらく期待どおりに機能すると思いますが、Reflector のバグ以外の何かがあるかどうかを理解したいと思います。

もう 1 つの興味深い点は、ほぼすべての変数が元の名前で再構築されたということですが、この変数 (および他のいくつかの変数) にはランダムな名前が割り当てられているようです。

どんな洞察も大歓迎です。

4

1 に答える 1

1

これが発生する同じメソッドに対して、IL と逆コンパイルされた C# の両方を投稿できますか?

たまたまそのアセンブリに「class string { ... }」がありませんよね?

于 2010-03-06T23:57:45.137 に答える