2011-03-18 21 views
1

ファイルvesrion /製品バージョンフィールドが埋め込まれたバージョンリソースを持つファイルがあります。私はBATファイル経由で製品バージョンを取得する必要があります。たとえば、私はおよそfileverの出力集まるところでは、文字列「101」または「1.0.1」cmd/bat経由でファイルから製品バージョンを取得する

答えて

0

How to use the Filever.exe tool to obtain specific information about a file in Windows

を持つことwan'tバットファイルの出力でPRODUCTVERSION 1.0.1を使用してファイルを持っていますそれは常に列にあり、5番目の列(バージョン)が必要です。だから、簡単なforで十分です:私のようなダミーのために

for /f "tokens=5 delims= " %%v in ('filever myFile.dll /b') do echo %%v 
+0

私はFileverについて知っていますが、情報が多すぎます。 fileverの出力を解析する際に助けてください。 – zabulus

+0

@zabalus:編集を参照してください。私はWindows 7用の 'filever'を見つけられませんでしたので、直接テストすることはできませんでしたが、コードはKBの記事で与えられたサンプル出力のために働きます。 – Joey

1

が、それはようになる製品バージョンの値を取得するために、上記のステートメント内の1つの修正があります:/vパラメータが欠落していた

for /f "tokens=5 delims= " %%v in ('filever myFile.dll /b /v') do echo %%v 

私は正しい価値を得ることができません。あなたが使用できるリソースRC-ファイルからバージョンを読み取ること

0

for /F "tokens=3" %%a in ('findstr ProductVersion YourProgram.rc') do set VERSION=%%~a 
2

あなたはfilever以来Sysinternals Suiteの一部であるsigcheckツールを使用することができ、例えば、静かな古いです-q(静かな)と-nを指定することにより

$ sigcheck.exe -q -n app.exe 
5.0.0.1241 

、それはあなただけで、ファイルのバージョン番号を表示します。

+1

偉大な、それは私が探していたものです。あなたはそれから5年後に答えました:)。まだ良い答え – zabulus

+0

Filever.exeツールのサポートが終了しました。この答えに+1してください。ありがとう。 – Ale

関連する問題