J#(Java)ファイルのバージョン情報を取得する

スポンサーリンク

ファイルのバージョン情報は、System.Diagnostics.FileVersionInfo クラスから取得します。このクラスのインスタンスを生成するには、GetVersionInfo メソッドを使用します。

サンプルコード

以下にサンプルコードを示します。

J# 全般
    // 指定したファイルのバージョン情報を取得する
    System.Diagnostics.FileVersionInfo hVerInfo = (
        System.Diagnostics.FileVersionInfo.GetVersionInfo("C:\\WINDOWS\\Notepad.exe")
    );

    String stNewLine = System.Environment.get_NewLine();
    String stPrompt  = System.String.Empty;

    // ファイルまでのパス
    stPrompt += "ファイル名 : " + hVerInfo.get_FileName() + stNewLine;

    // ファイルの説明 (AssemblyTitle)
    stPrompt += "ファイルの説明 : " + hVerInfo.get_FileDescription() + stNewLine;

    // コメント (AssemblyDescription)
    stPrompt += "コメント : " + hVerInfo.get_Comments() + stNewLine;

    // 会社名 (AssemblyCompany)
    stPrompt += "会社名 : " + hVerInfo.get_CompanyName() + stNewLine;

    // 製品名 (AssemblyProduct)
    stPrompt += "製品名 : " + hVerInfo.get_ProductName() + stNewLine;

    // 著作権 (AssemblyCopyright)
    stPrompt += "著作権 : " + hVerInfo.get_LegalCopyright() + stNewLine;

    // 商標 (AssemblyTrademark)
    stPrompt += "商標 : " + hVerInfo.get_LegalTrademarks() + stNewLine;

    // 正式ファイル名 (アセンブリ名)
    stPrompt += "正式ファイル名 : " + hVerInfo.get_OriginalFilename() + stNewLine;

    // 内部名
    stPrompt += "内部名 : " + hVerInfo.get_InternalName() + stNewLine;

    // 言語
    stPrompt += "言語 : " + hVerInfo.get_Language() + stNewLine;

    // ファイルのバージョン情報
    stPrompt += "ファイルのバージョン番号 : " + hVerInfo.get_FileVersion() + stNewLine;
    stPrompt += "ファイルのメジャー番号 : " + hVerInfo.get_FileMajorPart() + stNewLine;
    stPrompt += "ファイルのマイナ番号 : " + hVerInfo.get_FileMinorPart() + stNewLine;
    stPrompt += "ファイルのビルド番号 : " + hVerInfo.get_FileBuildPart() + stNewLine;
    stPrompt += "ファイルのプライベート番号 : " + hVerInfo.get_FilePrivatePart() + stNewLine;

    // 製品のバージョン情報
    stPrompt += "製品のバージョン番号 : " + hVerInfo.get_ProductVersion() + stNewLine;
    stPrompt += "製品のメジャー番号 : " + hVerInfo.get_ProductMajorPart() + stNewLine;
    stPrompt += "製品のマイナ番号 : " + hVerInfo.get_ProductMinorPart() + stNewLine;
    stPrompt += "製品のビルド番号 : " + hVerInfo.get_ProductBuildPart() + stNewLine;
    stPrompt += "製品のプライベート番号 : " + hVerInfo.get_ProductPrivatePart() + stNewLine;

    // ビルド情報
    stPrompt += "プライベート ビルド情報 : " + hVerInfo.get_PrivateBuild() + stNewLine;
    stPrompt += "特殊ビルド情報 : " + hVerInfo.get_SpecialBuild() + stNewLine;

    // その他の情報
    stPrompt += "デバッグ情報を格納するか : " + hVerInfo.get_IsDebug() + stNewLine;
    stPrompt += "開発バージョン (プレリリース) か : " + hVerInfo.get_IsPreRelease() + stNewLine;
    stPrompt += "ファイルが変更されているか : " + hVerInfo.get_IsPatched() + stNewLine;
    stPrompt += "標準リリース プロシージャで生成されたか : " + hVerInfo.get_IsPrivateBuild() + stNewLine;
    stPrompt += "特殊ビルドかどうか : " + hVerInfo.get_IsSpecialBuild() + stNewLine;

    // 取得したすべてのバージョン情報を表示する
    MessageBox.Show(stPrompt);

関連するリファレンス

準備中です。

スポンサーリンク