|
.NET TIPS
C#のコードをVBに、VBのコードをC#に変換するには?
デジタルアドバンテージ 遠藤 孝信
2009/01/15 |
|
|
C#やVisual Basic(VB)のコードを、別の.NET言語のコードに変換するサービスはWeb上にもいくつか存在するが(例えば、developerFusionのConvert VB.NET to C#)、ここではフリーのWindowsアプリケーションである「.NET Reflector」を使用して、これを行う方法について紹介する。
逆コンパイラ「.NET Reflector」によるコード変換
.NET Reflectorは本来、.NETのアセンブリ(実行ファイルやDLLファイル)からソース・コードへの逆コンパイルを行うツールであるが、逆コンパイルを行う際に、生成するコードの言語をC#やVBなどから選択できる(ほかにもIL、Delphi、マネージC++、Chrome(現Oxygene)を選択可)。
この機能を利用すれば、例えば、C#のコードをVisual Studioなどでコンパイルしてアセンブリを作成し、それを.NET ReflectorによりVBのコードへ逆コンパイルできる。これにより、C#のコードをVBに変換できるというわけだ。
以下の画面は、MSDNのFileStreamクラスの解説ページにあるC#のサンプル・プログラムを、.NET ReflectorによりC#およびVBのコードに逆コンパイルした結果だ。
|
コンパイルしたC#のサンプル・プログラムからC#のソース・コードを復元 |
.NET Reflectorでアセンブリを開くには、画面左のペインにエクスプローラからファイルをドラッグ&ドロップするのが簡単だ。 |
|
コンパイルしたC#のサンプル・プログラムからVBのソース・コードを復元 |
|
もちろん、.NET Reflectorが元のソース・コードを完全に復元できるわけではないし、そもそもC#とVBに、すべての構文や機能が等しく備わっているわけではない。よって、意図したようなコードが得られないことも多いが、コードの変換作業が必要な場合にはかなりの手助けとなるはずだ。
|
generated by
|
|
Insider.NET 記事ランキング
本日
月間