3

我有一个带有版本资源的文件,其中填充了文件 vesrion/产品版本字段。我需要通过 BAT 文件检索产品版本。例如,我在 bat 文件的输出中有带有 ProductVersion 1.0.1 的文件我不想有字符串“101”或“1.0.1”

4

4 回答 4

5

您可以使用属于Sysinternals Suitesigcheck一部分的工具,因为它很老旧,例如filever

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

通过指定-q(quiet) 和-n,它只会显示文件版本号。

于 2016-05-09T10:57:41.743 回答
1

如何使用 Filever.exe 工具获取有关 Windows 中文件的特定信息

从我收集的关于filever' 的输出中,它总是在列中,你想要第五列(版本)。所以一个简单的for就足够了:

for /f "tokens=5 delims= " %%v in ('filever myFile.dll /b') do echo %%v
于 2011-03-18T08:59:23.947 回答
1

对于像我这样的假人,上面的语句中有一个更正以获得产品版本的值,它就像:

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

参数丢失,/v我无法获得正确的值。

于 2012-01-10T12:57:45.600 回答
0

要从资源 RC 文件中读取版本,您可以使用:

for /F "tokens=3" %%a in ( 'findstr ProductVersion YourProgram.rc' ) do set VERSION=%%~a
于 2014-12-06T15:58:56.070 回答