私はfallowingコードを使用して、Windows GACフォルダ内のアセンブリのバージョンを取得します。リフレクション:アセンブリのバージョンが間違ったバージョン値を返す
FileVersionInfo fvi = FileVersionInfo.GetVersionInfo(assembly.Location);
string productVersion = fvi.ProductVersion;
上記のコードを実行した後、私は手動でRightClickを手動で実行し、アセンブリのバージョンを取得します。 productVersion
によって返されたバージョンは、の一部のアセンブリに対しての値を手動で取得した値と異なります。 考えられる原因アセンブリオブジェクトの使用のファイルバージョンについては
あなたはこれをチェックしましたか? http://stackoverflow.com/questions/5460199/fileversioninfo-fileversion-returns-productversion –
差異の例(期待と実際)は役に立ちます... –
バージョンリターンは15.0.xxxx.10000ですが、実際のバージョンは15.0です.yyyy.1000。これは、xxxxバージョンのアプリをインストールした後にアンインストールして、そのアプリのyyyyバージョンをインストールすると発生します。アプリのyyyyバージョンをインストールした後、すべてのdllはyyyyバージョンであるはずです。手動でチェックするときはOKです。しかし、この不一致はプログラム的なバージョンのチェック時に発生します。 –