0

[詳細]タブで値を取得する必要があります。たとえば、ファイルバージョン、C#を介した.dllおよび.exeファイルの製品バージョンなどです。これには次のコードを使用しています。

     FileVersionInfo myFile = FileVersionInfo.GetVersionInfo('Name of the file');
     //File Version
     string fileVersion = myFile.FileVersion;

このコードの問題は、一部のファイルのファイルバージョンが正しくないことです。これらのファイルの[詳細]タブには、異なるファイルバージョンが表示され、コードが誤った値を取得します。なぜこれが起こっているのかわかりません。

助けてください。前もって感謝します!!

4

2 に答える 2

1

予想されるバージョン (エクスプローラーから) は 10.0.0.35 で、10.0.000.0035 を取得しました

それは同じ数です。ファイルのバージョン番号は、ネイティブ リソースに2 回表示されます。C++ プログラムでバージョン リソースを編集するときにも確認できます。形式に制限のない人間が読めるバージョンがあります。それがあなたが読んでいるものです。 FileVersionInfo.FileVersion がstringを返す方法に注意してください。

また、機械可読バージョンである 64 ビットの数値もあります。4 つの部分にそれぞれ 16 ビットを使用します。エクスプローラーが読んでいるものです。対応するプロパティは、FileMajorPart、FileMinorPart、FileBuildPart、および FilePrivatePart です。intを返す方法に注意してください。

ProductVersion にもこれがあります。

于 2012-07-16T08:26:18.487 に答える