私は以下を使用してファイルを作成しています:
File.WriteAllText(FILEPATHNAME, "SOME VALUE");
ファイルを作成するときに、プログラムでバージョンを指定することはできますか?誰かがFileVersionInfoオブジェクトを使用した場合、私が指定したバージョンを取得するようにするには?
私は以下を使用してファイルを作成しています:
File.WriteAllText(FILEPATHNAME, "SOME VALUE");
ファイルを作成するときに、プログラムでバージョンを指定することはできますか?誰かがFileVersionInfoオブジェクトを使用した場合、私が指定したバージョンを取得するようにするには?
FileVersionInfoは、実行可能ファイルに保存できるバイナリリソースです。ただし、テキストファイルを作成しているため、これらのファイルにバイナリリソースを含めることはできません。テキストファイルのバージョン(FileVersionInfoで定義されている)を要求することは理にかなっています
残念ながら、それは不可能です。バージョン情報はファイルに添付された埋め込みリソースであり、バイナリファイルのみが埋め込みリソースを持つことができます。
詳細については、 FileVersionInfoクラスの備考セクションを参照してください。
別の方法として、バージョン情報を含む、作成しているテキストファイルごとに追加のテキストファイルを作成できます。
いいえ、そのようにファイルバージョンを書く方法はありませんし、正直に言って私が知っていることもありません。
可能なオプションは次のとおりです。
フォーマットされたデータ内のファイル自体にファイルバージョンを書き込みます。
私が見る最も一般的なアプローチは、ファイルの先頭またはファイルの最初の行に書き込むことです。そのため、その情報にすばやくアクセスして、読むことでプロセスを決定することができます。
本当にバージョンをファイル自体に入力できない場合は、バージョンをNTFS「代替データストリーム」(ADS)に入れてみてください。
それには独自の落とし穴があるので、あなたは自分が何をしているのかを知る必要があります。