0

友人からコンソールアプリケーション用の.exeファイルが渡されました。いくつかの試用版ソフトウェアによって、私はファイルのコードを入手しました。フォルダの名前はConsoleApplication2です。ファイルを作成してその下に貼り付けました。

デバッグしようとすると、次のようなエラーが発生します

..System.Data.DataRow
'System.Data.DataRow.ItemArray.get': cannot explicitly call operator or accessor
'System.Data.DataRow.this[int].get': cannot explicitly call operator or accessor    
'System.Data.DataRowCollection.this[int].get': cannot explicitly call operator or accessor

多くの多くの行のために。

 table2.Rows.Add(row.get_ItemArray());
 if (table2.Rows.get_Count() != 0)

これは線の2つの例です。この線は適切だと思います。間違ったカテゴリの下にコピーされたコードのようないくつかの間違いを犯しました。何かを変更するのを忘れました???

手伝ってくれませんか。

4

3 に答える 3

5

「隠し」アクセサメソッドを使用してプロパティの値を読み取ろうとしています。それは許可されていません。代わりに、次のようにプロパティ値を参照する必要があります。

table2.Rows.Add(row.ItemArray);
if (table2.Rows.Count != 0)
于 2013-03-16T02:41:26.830 に答える
3

それはあなたのコードですか、それとも逆コンパイラーから入手しましたか?

get_ItemArrayは、コンパイラによって生成されるメソッドです。

get_とset_を削除してみてください


ILSpyを使用して「コードを保存」できます(http://sourceforge.net/projects/sharpdevelop/files/ILSpy/2.0/ILSpy_Master_2.1.0.1603_RTW_Binaries.zip/download

アセンブリを選択し、[ファイル]->[コードの保存]をクリックしてプロジェクトにエクスポートします。

しかし、なぜソースコードを入手できないのでしょうか。それはあなたのコードですか?それはあなたがカスタマイズにお金を払わないようにしようとしている製品ですか?

于 2013-03-16T02:40:24.510 に答える
1
I dont have the original code. I had the exe, i got it from a decompiler. 

RedGate からReflectorをダウンロードし、 Denis Bauer の File Dissasemblerプラグインをインストールします。

EXE を Reflector にロードし、[File Dissasemlber] ボタンをクリックして、EXE をプロジェクトとソース ファイルを含むソリューションに逆コンパイルします。

于 2013-03-16T04:02:13.230 に答える