質問: C#で指定したファイルのバージョン情報(ファイルの説明など)を編集するプログラムを書こうと思ったのですが、FileVersionInfoクラス内のプロパティはすべて読み取り専用となっていました。 ファイルのバージョン情報を書き換えるにはどのようにすればよいのでしょうか?
回答: 自分が作成したのでない Windows 系の実行ファイル EXE や DLL やその他、のバージョンや著作権表示を、オリジナルの作者に断り無く改変する(したい)ということでしょうか?可能であってもお勧めしません。 * そういう改変を防ぐための「デジタル署名」入りファイルは書き換えると使えなくなります。時と場合によっては Windows ごと起動しなくなるかもしれません。 * 実行ファイルを改変する行為は要するに「ウイルスの動作」です。アンチウイルスソフトに検出されて阻まれるでしょう。 * 著作権的にその行為ってどうなの? 技術的興味だけから手を出すにはかなりグレー(というか真っ黒)な行為ですので、もっと白くて建設的な方向に舵を切ることをお勧めします。 ご自分で作っているソフトのバージョンや著作権表示が初期値のままなので変更したいということならば、それは開発しているソフトのバージョンリソースファイルの書き換え後の再ビルドとなります。具体的な手法は開発に使っているツール (Visual Studio とか) で異なります。 例 : C# Form App ならプロジェクトのプロパティ→アプリケーション→アセンブリ情報とか